[all-commits] [llvm/llvm-project] 39c23a: Revert "[lldb/Commands] Add `scripting template li...

agozillon via All-commits all-commits at lists.llvm.org
Thu Aug 1 23:52:01 PDT 2024


  Branch: refs/heads/users/agozillon/openmp-allocatable-explicit-member-mapping-fortran-offloading-tests
  Home:   https://github.com/llvm/llvm-project
  Commit: 39c23a31d2ab9a6068fcaa22ed9b1e10101db5ff
      https://github.com/llvm/llvm-project/commit/39c23a31d2ab9a6068fcaa22ed9b1e10101db5ff
  Author: Med Ismail Bennani <ismail at bennani.ma>
  Date:   2024-07-23 (Tue, 23 Jul 2024)

  Changed paths:
    M lldb/include/lldb/Core/PluginManager.h
    M lldb/include/lldb/Interpreter/Interfaces/ScriptedInterface.h
    R lldb/include/lldb/Interpreter/Interfaces/ScriptedInterfaceUsages.h
    M lldb/include/lldb/lldb-private-interfaces.h
    M lldb/source/Commands/CommandObjectScripting.cpp
    M lldb/source/Commands/Options.td
    M lldb/source/Core/PluginManager.cpp
    M lldb/source/Interpreter/CMakeLists.txt
    R lldb/source/Interpreter/Interfaces/CMakeLists.txt
    R lldb/source/Interpreter/Interfaces/ScriptedInterfaceUsages.cpp
    M lldb/source/Plugins/CMakeLists.txt
    M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/CMakeLists.txt
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/OperatingSystemPythonInterface.cpp
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/OperatingSystemPythonInterface.h
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/OperatingSystemPythonInterface/CMakeLists.txt
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/OperatingSystemPythonInterface/OperatingSystemPythonInterface.cpp
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/OperatingSystemPythonInterface/OperatingSystemPythonInterface.h
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedPlatformPythonInterface.cpp
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedPlatformPythonInterface.h
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedPlatformPythonInterface/CMakeLists.txt
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedPlatformPythonInterface/ScriptedPlatformPythonInterface.cpp
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedPlatformPythonInterface/ScriptedPlatformPythonInterface.h
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedProcessPythonInterface.cpp
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedProcessPythonInterface.h
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedProcessPythonInterface/CMakeLists.txt
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedProcessPythonInterface/ScriptedProcessPythonInterface.cpp
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedProcessPythonInterface/ScriptedProcessPythonInterface.h
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedThreadPlanPythonInterface.cpp
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedThreadPlanPythonInterface.h
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedThreadPlanPythonInterface/CMakeLists.txt
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedThreadPlanPythonInterface/ScriptedThreadPlanPythonInterface.cpp
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedThreadPlanPythonInterface/ScriptedThreadPlanPythonInterface.h
    M lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp

  Log Message:
  -----------
  Revert "[lldb/Commands] Add `scripting template list` command with auto discovery" (#100273)

Reverts llvm/llvm-project#97273 since it broke the windows bot:

https://lab.llvm.org/buildbot/#/builders/141/builds/1025/steps/4/logs/stdio


  Commit: 2bf71b8bc851b49745b795f228037db159005570
      https://github.com/llvm/llvm-project/commit/2bf71b8bc851b49745b795f228037db159005570
  Author: Heejin Ahn <aheejin at gmail.com>
  Date:   2024-07-23 (Tue, 23 Jul 2024)

  Changed paths:
    M llvm/lib/Target/WebAssembly/WebAssemblyLowerEmscriptenEHSjLj.cpp
    A llvm/test/CodeGen/WebAssembly/lower-wasm-ehsjlj-phi.ll

  Log Message:
  -----------
  [WebAssembly] Fix phi handling for Wasm SjLj (#99730)

In Wasm SjLj, longjmpable `call`s that in functions that call `setjmp`
are converted into `invoke`s. Those `invoke`s are meant to unwind to
`catch.dispatch.longjmp` to figure out which `setjmp` those `longjmp`
buffers belong to:

https://github.com/llvm/llvm-project/blob/fada9227325b3eaa0bdc09a486f29a7f08b7b3fb/llvm/lib/Target/WebAssembly/WebAssemblyLowerEmscriptenEHSjLj.cpp#L250-L260

But in case a longjmpable call is within another `catchpad` or
`cleanuppad` scope, to maintain the nested scope structure, we should
make them unwind to the scope's next unwind destination and not directly
to `catch.dispatch.longjmp`:

https://github.com/llvm/llvm-project/blob/fada9227325b3eaa0bdc09a486f29a7f08b7b3fb/llvm/lib/Target/WebAssembly/WebAssemblyLowerEmscriptenEHSjLj.cpp#L1698-L1727
In this case the longjmps will eventually unwind to
`catch.dispatch.longjmp` and be handled there.

In this case, it is possible that the unwind destination (which is an
existing `catchpad` or `cleanuppad`) may already have `phi`s. And
because the unwind destinations get new predecessors because of the
newly created `invoke`s, those `phi`s need to have new entries for those
new predecessors.

This adds new preds as new incoming blocks to those `phi`s, and we use a
separate `SSAUpdater` to calculate the correct incoming values to those
blocks.

I have assumed `SSAUpdaterBulk` used in `rebuildSSA` would take care of
these things, but apparently it doesn't. It takes available defs and
adds `phi`s in the defs' dominance frontiers, i.e., where each def's
dominance ends, and rewrites other uses based on the newly added `phi`s.
But it doesn't add entries to existing `phi`s, and the case in this bug
may not even involve dominance frontiers; this bug is simply about
existing `phis`s that have gained new preds need new entries for them.
It is kind of surprising that this bug was only reported recently, given
that this pass has not been changed much in years.

Fixes #97496 and fixes
https://github.com/emscripten-core/emscripten/issues/22170.


  Commit: 51507046c0e35eb04bbd90c79f6f3e5f31fe3dad
      https://github.com/llvm/llvm-project/commit/51507046c0e35eb04bbd90c79f6f3e5f31fe3dad
  Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
  Date:   2024-07-23 (Tue, 23 Jul 2024)

  Changed paths:
    M clang/lib/Sema/SemaOpenMP.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

  Log Message:
  -----------
  [clang][OpenMP] Mark all SIMD regions as non-throwing (#100162)

[4.5:75:19], [5.0:114:3], [5.1:137:21], [5.2:235:30]
"No exception can be raised in the **simd** region."


  Commit: 3a51788b68015901995fc7b528eb5749e8af0602
      https://github.com/llvm/llvm-project/commit/3a51788b68015901995fc7b528eb5749e8af0602
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2024-07-23 (Tue, 23 Jul 2024)

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

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


  Commit: adc59f4c58ddc81b078b0b2007b7b15a924ed8c2
      https://github.com/llvm/llvm-project/commit/adc59f4c58ddc81b078b0b2007b7b15a924ed8c2
  Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
  Date:   2024-07-23 (Tue, 23 Jul 2024)

  Changed paths:
    M llvm/include/llvm/Frontend/OpenMP/ConstructCompositionT.h

  Log Message:
  -----------
  [Frontend][OpenMP] Fix typo in comment, NFC


  Commit: 4f516aa04be616f3ad2929b275e7dc7da9b90d0a
      https://github.com/llvm/llvm-project/commit/4f516aa04be616f3ad2929b275e7dc7da9b90d0a
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-07-23 (Tue, 23 Jul 2024)

  Changed paths:
    M clang/lib/Driver/ToolChains/AMDGPU.cpp
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/lib/Driver/ToolChains/CommonArgs.cpp
    M clang/lib/Driver/ToolChains/CommonArgs.h
    M clang/lib/Driver/ToolChains/Cuda.cpp
    M clang/test/Driver/openmp-offload-gpu.c

  Log Message:
  -----------
  [Clang] Make the GPU toolchains implicitly link `-lm` and `-lc` (#98170)

Summary:
The previous patches (The other commits in this chain) allow the
offloading toolchain to directly invoke the device linker. Because of
this, we can now just have the toolchain implicitly include `-lc` and
`-lm` like a standard target does. This removes the old handling that
went through the fat binary `-lcgpu`.


  Commit: ef8de68faebee0226b4836e66574f225f724e768
      https://github.com/llvm/llvm-project/commit/ef8de68faebee0226b4836e66574f225f724e768
  Author: Walter Erquinigo <a20012251 at gmail.com>
  Date:   2024-07-23 (Tue, 23 Jul 2024)

  Changed paths:
    M flang/lib/Optimizer/Transforms/AddDebugInfo.cpp
    M mlir/include/mlir-c/Dialect/LLVM.h
    M mlir/include/mlir/Dialect/LLVMIR/LLVMAttrDefs.td
    M mlir/lib/CAPI/Dialect/LLVM.cpp
    M mlir/lib/Target/LLVMIR/DebugImporter.cpp
    M mlir/lib/Target/LLVMIR/DebugTranslation.cpp
    M mlir/test/CAPI/llvm.c
    M mlir/test/Target/LLVMIR/Import/debug-info.ll
    M mlir/test/Target/LLVMIR/llvmir-debug.mlir

  Log Message:
  -----------
  [MLIR][DebugInfo] Enable the use of DILocalVariable DIFlags (#100190)

This patch enables the use of flags for local variables in debug info.
They were defaulted as always zero, but allowing them is pretty trivial.


  Commit: 73ac9536268f21149e29601da31e3415725b0a17
      https://github.com/llvm/llvm-project/commit/73ac9536268f21149e29601da31e3415725b0a17
  Author: Piyou Chen <piyou.chen at sifive.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    M compiler-rt/lib/builtins/CMakeLists.txt
    A compiler-rt/lib/builtins/cpu_model/riscv.c
    R compiler-rt/lib/builtins/riscv/feature_bits.c

  Log Message:
  -----------
  [RISCV][compiler-rt] Small fixes for __riscv_feature_bits (#100158)

Changes included:

- Adding CONSTRUCTOR_ATTRIBUTE so that the static data is setup early on
in process lifetime. This is required by gcc docs for
__builtin_cpu_supports which we hope to implement in terms of this.
- Move the length initialization outside of the #if defined(linux) block
so that the length field always reflects the size of the structures even
if non of the feature bits are non-zero.
- Change the __riscv_vendor_feature_bits.length field to match the
length of the actual structure.

Note: Copy from https://github.com/llvm/llvm-project/pull/99958

---------

Co-authored-by: Philip Reames <preames at rivosinc.com>


  Commit: f3f0d9928f982cfd302351f418bcc5b63cc1bb9d
      https://github.com/llvm/llvm-project/commit/f3f0d9928f982cfd302351f418bcc5b63cc1bb9d
  Author: Heejin Ahn <aheejin at gmail.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    M llvm/lib/Target/WebAssembly/WebAssemblyLowerEmscriptenEHSjLj.cpp
    R llvm/test/CodeGen/WebAssembly/lower-wasm-ehsjlj-phi.ll

  Log Message:
  -----------
  Revert "[WebAssembly] Fix phi handling for Wasm SjLj (#99730)"

This reverts commit 2bf71b8bc851b49745b795f228037db159005570.
This broke the builbot at
https://lab.llvm.org/buildbot/#/builders/110/builds/474.


  Commit: f9cf5393dc9bc5e01f53e7906e7bebc3f3f30382
      https://github.com/llvm/llvm-project/commit/f9cf5393dc9bc5e01f53e7906e7bebc3f3f30382
  Author: Daniel Thornburgh <dthorn at google.com>
  Date:   2024-07-23 (Tue, 23 Jul 2024)

  Changed paths:
    M libc/src/__support/block.h

  Log Message:
  -----------
  [libc][malloc] Align blocks to max_align_t. (#100279)

Since there are two offsets from block start to usable area, this
ensures that the usable area is maximally aligned, so long as the offset
type size is no less than half the max alignment. This is true on at
least typical 32-bit and 64-bit targets.

Previously, there was a roughly 50-50 chance a given block's usable area
would be misaligned for a malloc on a 32-bit system. The half that were
misaligned would require at least one block of additional padding,
costing 12 bytes. With this change, the only cost is 0-4 bytes at the
beginning of the heap to reach an initial 8-byte alignment.

See #98096


  Commit: ea4a3480984c8d886d50cc171b6d672135697801
      https://github.com/llvm/llvm-project/commit/ea4a3480984c8d886d50cc171b6d672135697801
  Author: Sayhaan Siddiqui <49014204+sayhaan at users.noreply.github.com>
  Date:   2024-07-23 (Tue, 23 Jul 2024)

  Changed paths:
    M bolt/lib/Rewrite/DWARFRewriter.cpp

  Log Message:
  -----------
  [BOLT][DWARF][NFC] Move initialization of DWOName outside of lambda (#99728)

Followup to the splitting of processUnitDIE, moves code that accesses
common resource to be outside of the function that will be parallelized.

Followup to #99957


  Commit: ae1de3ea3c2db722bb2b135fe2c29b14b9ae1bcc
      https://github.com/llvm/llvm-project/commit/ae1de3ea3c2db722bb2b135fe2c29b14b9ae1bcc
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-07-23 (Tue, 23 Jul 2024)

  Changed paths:
    M flang/test/Driver/omp-driver-offload.f90

  Log Message:
  -----------
  [Flang] Remove tests checking now removed 'libc-gpu.a`

Summary:
These tests were removed in a previous patch.

The linker wrapper now just extracts the device inputs and forwards them
directly to the device's link job. This is the job that occurs when you
do `clang --target=amdgcn-amd-amdhsa foo.o` or similar. Because this can
handle LTO we no longer do LTO in the linker wrapper. This has some
fallout, because we now require `ld.lld` to be built with a compatible
version, but I think we always expected that.

I made the decision to remove this `libc-gpu.a` library because it was
unnecessary and complicated things. Now I simply have the link job
implicitly link `-lc` if it exists. Users can also now pass
`-Xoffload-linker=amdgcn-amd-amdhsa -lc` or similar to pass it. Because
of this, these tests need to be removed. I forgot that Fortran also had
these.


  Commit: 56535a090d91ff10a60c884bacbd314dcf9659db
      https://github.com/llvm/llvm-project/commit/56535a090d91ff10a60c884bacbd314dcf9659db
  Author: Jason Molenda <jmolenda at apple.com>
  Date:   2024-07-23 (Tue, 23 Jul 2024)

  Changed paths:
    M lldb/source/Commands/CommandObjectProcess.cpp

  Log Message:
  -----------
  [lldb] Don't crash when attaching to pid and no binaries found (#100287)

There is a narrow window during process launch on macOS where lldb can
attach and no binaries will be seen as loaded in the process (none
reported by libdyld SPI). A year ago I made changes to set the
new-binary-loaded breakpoint correctly despite this. But we've seen a
crash when this combination is seen, where
CommandObjectProcessAttach::DoExecute assumed there was at least one
binary registered in the Target. Fix that.

Also fix two FileSpec API uses from when we didn't have a GetPath()
method that returned a std::string, and was copying the filepaths into
fixed length buffers. All of this code was from ~14 years ago when we
didn't have that API.

rdar://131631627


  Commit: 52ebd8d0577e07be9c25b56656d1974a84c40bf7
      https://github.com/llvm/llvm-project/commit/52ebd8d0577e07be9c25b56656d1974a84c40bf7
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2024-07-23 (Tue, 23 Jul 2024)

  Changed paths:
    M compiler-rt/test/tsan/debug_alloc_stack.cpp

  Log Message:
  -----------
  [tsan] Enable test on linux (#99659)

It passes as-is on my system.


  Commit: 4f79ef4efff432a93005b156726587c8c5a5ac17
      https://github.com/llvm/llvm-project/commit/4f79ef4efff432a93005b156726587c8c5a5ac17
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-07-23 (Tue, 23 Jul 2024)

  Changed paths:
    M libcxx/include/__configuration/abi.h
    M libcxx/include/__type_traits/datasizeof.h
    M libcxx/include/__utility/pair.h
    M libcxx/test/libcxx/utilities/utility/pairs/pairs.pair/abi.trivial_copy_move.pass.cpp
    M libcxx/test/libcxx/utilities/utility/pairs/pairs.pair/abi.trivially_copyable.compile.pass.cpp

  Log Message:
  -----------
  [libc++] Revert "Make std::pair trivially copyable if its members are (#89652)" (#100184)

This reverts commit f9dd885cb6e6b. We're not certain yet whether the
patch has issues, so we are reverting until we've had time to
investigate.


  Commit: 26fa399012da00fbf806f50ad72a3b5f0ee63eab
      https://github.com/llvm/llvm-project/commit/26fa399012da00fbf806f50ad72a3b5f0ee63eab
  Author: Stefan Pintilie <stefanp at ca.ibm.com>
  Date:   2024-07-23 (Tue, 23 Jul 2024)

  Changed paths:
    M llvm/lib/CodeGen/RegisterCoalescer.cpp
    A llvm/test/CodeGen/PowerPC/subreg-coalescer.mir
    A llvm/test/CodeGen/X86/subreg-fail.mir

  Log Message:
  -----------
  [RegisterCoalescer] Fix SUBREG_TO_REG handling in the RegisterCoalescer. (#96839)

The issue with the handling of the SUBREG_TO_REG is that we don't join
the subranges correctly when we join live ranges across the
SUBREG_TO_REG. For example when joining across this:
```
32B	  %2:gr64_nosp = SUBREG_TO_REG 0, %0:gr32, %subreg.sub_32bit
```
we want to join these live ranges:
```
%0 [16r,32r:0) 0 at 16r  weight:0.000000e+00
%2 [32r,112r:0) 0 at 32r  weight:0.000000e+00
```
Before the fix the range for the resulting merged `%2` is:
```
%2 [16r,112r:0) 0 at 16r  weight:0.000000e+00
```
After the fix it is now this: 
```
%2 [16r,112r:0) 0 at 16r  L000000000000000F [16r,112r:0) 0 at 16r  weight:0.000000e+00
```

Two tests are added to this fix. The X86 test fails without the patch.
The PowerPC test passes with and without the patch but is added as a way
track future possible failures when register classes are changed in a
future patch.


  Commit: 0420d2f97eac49af5e816b0e3f2a9135d1673168
      https://github.com/llvm/llvm-project/commit/0420d2f97eac49af5e816b0e3f2a9135d1673168
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-07-23 (Tue, 23 Jul 2024)

  Changed paths:
    M libc/cmake/modules/LLVMLibCTestRules.cmake
    M libc/docs/configure.rst

  Log Message:
  -----------
  [libc] Fix leftover debug commandline argument

Summary:
Fixes https://github.com/llvm/llvm-project/issues/100289


  Commit: bc829b501d0ffa93019d29b0294e998d3dbb3d7a
      https://github.com/llvm/llvm-project/commit/bc829b501d0ffa93019d29b0294e998d3dbb3d7a
  Author: WANG Rui <wangrui at loongson.cn>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    M llvm/test/CodeGen/LoongArch/rotl-rotr.ll

  Log Message:
  -----------
  [LoongArch][test] Pre-commit for fix codegen for ISD::ROTR. NFC


  Commit: 9d1d0cc0206aa9a44a9fe0464c70b87a095921b6
      https://github.com/llvm/llvm-project/commit/9d1d0cc0206aa9a44a9fe0464c70b87a095921b6
  Author: WANG Rui <wangrui at loongson.cn>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    M llvm/test/CodeGen/LoongArch/rotl-rotr.ll

  Log Message:
  -----------
  [LoongArch][test] Revert "Pre-commit for fix codegen for ISD::ROTR". NFC

This reverts commit bc829b501d0ffa93019d29b0294e998d3dbb3d7a.


  Commit: 785d376d1231167688dd12f93c5c0a5d46cd4086
      https://github.com/llvm/llvm-project/commit/785d376d1231167688dd12f93c5c0a5d46cd4086
  Author: Lang Hames <lhames at gmail.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    M llvm/lib/ExecutionEngine/JITLink/COFFLinkGraphBuilder.cpp
    M llvm/lib/ExecutionEngine/JITLink/ELFLinkGraphBuilder.h
    M llvm/lib/ExecutionEngine/JITLink/MachOLinkGraphBuilder.cpp
    M llvm/lib/ExecutionEngine/Orc/Core.cpp
    A llvm/test/ExecutionEngine/JITLink/AArch64/Inputs/MachO_common_x_and_addr_getter.s
    A llvm/test/ExecutionEngine/JITLink/AArch64/Inputs/MachO_strong_x_and_addr_getter.s
    A llvm/test/ExecutionEngine/JITLink/AArch64/MachO_common_symbol_x_multiple_defs.s
    M llvm/test/ExecutionEngine/JITLink/x86-64/COFF_common_symbol.s

  Log Message:
  -----------
  [ORC][JITLink] Treat common symbols as weak definitions.

Duplicate common definitions should be coaleseced, rather than being treated as
duplicate definitions. Strong definitions should override common definitions.

rdar://132314264


  Commit: 690dc4eff19c85d0afaa9e189cf7e40fe3d1ff76
      https://github.com/llvm/llvm-project/commit/690dc4eff19c85d0afaa9e189cf7e40fe3d1ff76
  Author: quartersdg <sdgoglin at gmail.com>
  Date:   2024-07-23 (Tue, 23 Jul 2024)

  Changed paths:
    M mlir/include/mlir/IR/OpImplementation.h
    M mlir/lib/AsmParser/AsmParserImpl.h
    M mlir/lib/AsmParser/Parser.cpp
    M mlir/lib/AsmParser/Parser.h
    M mlir/test/lib/Dialect/Test/TestAttrDefs.td
    M mlir/test/lib/Dialect/Test/TestAttributes.cpp
    M mlir/test/mlir-tblgen/testdialect-attrdefs.mlir

  Log Message:
  -----------
  Add AsmParser::parseDecimalInteger. (#96255)

An attribute parser needs to parse lists of possibly negative integers
separated by x in a way which is foiled by parseInteger handling hex
formats and parseIntegerInDimensionList does not allow negatives.

---------

Co-authored-by: Jacques Pienaar <jpienaar at google.com>


  Commit: c49837f5f688ff2cd70ecc6d5aefd71af2afb22b
      https://github.com/llvm/llvm-project/commit/c49837f5f688ff2cd70ecc6d5aefd71af2afb22b
  Author: Lang Hames <lhames at gmail.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    M llvm/lib/ExecutionEngine/JITLink/COFFLinkGraphBuilder.cpp
    M llvm/lib/ExecutionEngine/JITLink/ELFLinkGraphBuilder.h
    M llvm/lib/ExecutionEngine/JITLink/MachOLinkGraphBuilder.cpp
    M llvm/lib/ExecutionEngine/Orc/Core.cpp
    R llvm/test/ExecutionEngine/JITLink/AArch64/Inputs/MachO_common_x_and_addr_getter.s
    R llvm/test/ExecutionEngine/JITLink/AArch64/Inputs/MachO_strong_x_and_addr_getter.s
    R llvm/test/ExecutionEngine/JITLink/AArch64/MachO_common_symbol_x_multiple_defs.s
    M llvm/test/ExecutionEngine/JITLink/x86-64/COFF_common_symbol.s

  Log Message:
  -----------
  Revert "[ORC][JITLink] Treat common symbols as weak definitions."

This reverts commit 785d376d1231167688dd12f93c5c0a5d46cd4086 while I
investigate some bot failures (e.g.
https://lab.llvm.org/buildbot/#/builders/3/builds/1983).


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

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVInstrInfoVSDPatterns.td
    M llvm/lib/Target/RISCV/RISCVVectorPeephole.cpp
    M llvm/test/CodeGen/RISCV/rvv/rvv-out-arguments.ll
    M llvm/test/CodeGen/RISCV/rvv/rvv-peephole-vmerge-vops-mir.ll
    M llvm/test/CodeGen/RISCV/rvv/vpload.ll
    M llvm/test/CodeGen/RISCV/rvv/vpstore.ll
    M llvm/test/CodeGen/RISCV/rvv/vselect-fp.ll

  Log Message:
  -----------
  [RISCV] Add unit strided load/store to whole register peephole (#100116)

This adds a new vector peephole that converts unmasked, VLMAX
vleN.v/vseN.v to their whole register equivalents.

It replaces the existing tablegen patterns on ISD::LOAD/ISD::STORE and
is a bit more general since it also catches VP loads and stores and
@llvm.riscv intrinsics.

The heavy lifting of detecting a VLMAX AVL and an all-ones mask is
already taken care of by existing peepholes.


  Commit: 599f8e1120db8c8c7a5e42134ea52650e8fb0f1c
      https://github.com/llvm/llvm-project/commit/599f8e1120db8c8c7a5e42134ea52650e8fb0f1c
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    M compiler-rt/lib/builtins/cpu_model/x86.c
    M llvm/lib/TargetParser/Host.cpp

  Log Message:
  -----------
  Reland "[compiler-rt][X86] Use functions in cpuid.h instead of inline assembly (#97877)"

This reverts commit f1905f064451bf688577976a13000c9c47e58452.

This relands commit 19cf8deabe1124831164987f1b9bf2f806c0a875.

There were issues with the preprocessor includes that should have
excluded MSVC still including clang functions building on windows and
using intrin.h. This relanding fixes this behavior by additionally
wrapping the uses of __get_cpuid and __get_cpuid_count in _MSC_VER so
that clang in MSVC mode, which includes intrin.h, does not have any
conflicts.


  Commit: d27ee36cdef28845b4aba4f438c7d8bef4be4da7
      https://github.com/llvm/llvm-project/commit/d27ee36cdef28845b4aba4f438c7d8bef4be4da7
  Author: Kai Yan <aklkaiyan at tencent.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    M llvm/lib/CodeGen/WindowScheduler.cpp
    A llvm/test/CodeGen/Hexagon/swp-ws-zero-cost.mir

  Log Message:
  -----------
  [llvm][CodeGen] Fixed max cycle calculation with zero-cost instructions for window scheduler (#99454)

We discovered some scheduling failures occurring when zero-cost
instructions were involved. This issue will be addressed by this patch.


  Commit: 2d6ff0c533aa1b0fe6d91764846f636c4a4e911c
      https://github.com/llvm/llvm-project/commit/2d6ff0c533aa1b0fe6d91764846f636c4a4e911c
  Author: Kai Yan <aklkaiyan at tencent.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    M llvm/lib/CodeGen/WindowScheduler.cpp
    M llvm/test/CodeGen/Hexagon/swp-ws-fail-2.mir

  Log Message:
  -----------
  [llvm][CodeGen] Added missing initialization failure information for window scheduler (#99449)

Added missing initialization failure information for window scheduler.


  Commit: e386aacb747b4512dedf481ad83e054d3dd641e6
      https://github.com/llvm/llvm-project/commit/e386aacb747b4512dedf481ad83e054d3dd641e6
  Author: hev <wangrui at loongson.cn>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    M llvm/lib/Target/LoongArch/LoongArchInstrInfo.td
    M llvm/test/CodeGen/LoongArch/rotl-rotr.ll

  Log Message:
  -----------
  [LoongArch] Fix codegen for ISD::ROTR (#100292)

This patch fixes the code generation for IR:

sext i32 (trunc i64 (rotr i64 %x, i64 %y) to i32) to i64


  Commit: 6810c05ccaeea318bc06076680a9a843b02a1881
      https://github.com/llvm/llvm-project/commit/6810c05ccaeea318bc06076680a9a843b02a1881
  Author: Luke Lau <luke at igalia.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    M llvm/test/CodeGen/RISCV/rvv/pr99782.ll

  Log Message:
  -----------
  [RISCV] Update test for #99821 after #100116. NFC


  Commit: cd1a2ede2f6a741adf34fc5b57eb73aa149b515c
      https://github.com/llvm/llvm-project/commit/cd1a2ede2f6a741adf34fc5b57eb73aa149b515c
  Author: Kai Yan <aklkaiyan at tencent.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    M llvm/lib/CodeGen/MachinePipeliner.cpp
    A llvm/test/CodeGen/Hexagon/swp-ws-pragma-initiation-interval-fail.mir

  Log Message:
  -----------
  [llvm][CodeGen] Added a new restriction for II by pragma in window scheduler (#99448)

Added a new restriction for window scheduling.
Window scheduling is disabled when llvm.loop.pipeline.initiationinterval
is set.


  Commit: 2ca300f914b1bdeef5f08415bbcbf1803c186401
      https://github.com/llvm/llvm-project/commit/2ca300f914b1bdeef5f08415bbcbf1803c186401
  Author: Thorsten Schütt <schuett at gmail.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    M llvm/lib/CodeGen/GlobalISel/CMakeLists.txt
    M llvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp
    A llvm/lib/CodeGen/GlobalISel/CombinerHelperCasts.cpp

  Log Message:
  -----------
  [GlobalIsel][NFC] Move cast code (#100196)

Preparation for more cast combines


  Commit: 6942f1d5aa232face8269ce78c4de7d45571a8e9
      https://github.com/llvm/llvm-project/commit/6942f1d5aa232face8269ce78c4de7d45571a8e9
  Author: Zhaoshi Zheng <zhaoshiz at quicinc.com>
  Date:   2024-07-23 (Tue, 23 Jul 2024)

  Changed paths:
    M mlir/lib/Dialect/Linalg/Transforms/Vectorization.cpp
    M mlir/test/Dialect/Linalg/vectorization-scalable.mlir
    M mlir/test/Dialect/Linalg/vectorization-unsupported.mlir
    A mlir/test/Integration/Dialect/Linalg/CPU/ArmSVE/reduce_1d.mlir
    A mlir/test/Integration/Dialect/Linalg/CPU/ArmSVE/reduce_2d.mlir

  Log Message:
  -----------
  [MLIR][Linalg] Scalable Vectorization of Reduction on the Trailing Dimension (#97788)

Allow scalable vectorization of linalg::reduce and linalg::generic that has
reduction iterator(s) with two restrictions:
1. The reduction dim is the last (innermost) dim of the op; and
2. Only the reduction dim is requested for scalable vectorization.

One exception is that scalable vectorization of the reduction dim in
Matmul-like ops are not supported even above restrictions are met.

Allowed combinations of scalable flags and iterator types:
Matmul:
        Iterators: ["parallel", "parallel", "reduction"]
Scalable Flags: ["true",     "true",     "false"]
                       ["false",    "true",     "false"]
Matvec:
        Iterators: ["parallel", "reduction"]
Scalable Flags: ["false",    "true"]
                       ["true",     "false"]


  Commit: 6461e537815f7fa68cef06842505353cf5600e9c
      https://github.com/llvm/llvm-project/commit/6461e537815f7fa68cef06842505353cf5600e9c
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-23 (Tue, 23 Jul 2024)

  Changed paths:
    M clang/lib/Driver/ToolChains/Clang.cpp
    A clang/test/Driver/warn-fsyntax-only.c

  Log Message:
  -----------
  [Driver] Don't claim -c/-S

Remove the TODO I left in commit
a07b135ce0c0111bd83450b5dc29ef0381cdbc39.

We will now warn about `-c/-S` with `-fsyntax-only`. This relands #98607
with a specific target triple.


  Commit: 2ae862b74b3b132b6682350d47a095e733c337ce
      https://github.com/llvm/llvm-project/commit/2ae862b74b3b132b6682350d47a095e733c337ce
  Author: Hongyu Chen <hongyc4 at uci.edu>
  Date:   2024-07-23 (Tue, 23 Jul 2024)

  Changed paths:
    M lld/ELF/ScriptLexer.cpp
    M lld/ELF/ScriptLexer.h
    M lld/ELF/ScriptParser.cpp

  Log Message:
  -----------
  [ELF] Remove `consumeLabel` in ScriptLexer (#99567)

This commit removes `consumeLabel` since we can just use consume
function to have the same functionalities.


  Commit: 7b619730d9e2bcc2ab1588574ed94ae19c4b8654
      https://github.com/llvm/llvm-project/commit/7b619730d9e2bcc2ab1588574ed94ae19c4b8654
  Author: Timm Bäder <tbaeder at redhat.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

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

  Log Message:
  -----------
  [clang][Interp][test] Try to make a test case work on Windows


  Commit: 9d45b450f26a1ad669d4ceaac2c36aff4b80bfde
      https://github.com/llvm/llvm-project/commit/9d45b450f26a1ad669d4ceaac2c36aff4b80bfde
  Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    M llvm/include/llvm/Transforms/Utils/SimplifyLibCalls.h
    M llvm/lib/Transforms/Utils/SimplifyLibCalls.cpp
    A llvm/test/Transforms/InstCombine/remquo.ll
    A llvm/test/Transforms/InstCombine/remquol-fp128.ll
    A llvm/test/Transforms/InstCombine/remquol-fp80.ll
    A llvm/test/Transforms/InstCombine/remquol-ppc-fp128.ll

  Log Message:
  -----------
  [SimplifyLibCalls] Constant fold `remquo` (#99647)

This patch adds constant folding support for `remquo`.
Reference: https://en.cppreference.com/w/cpp/numeric/math/remquo

Closes https://github.com/llvm/llvm-project/issues/99497.


  Commit: f4e8fbc5e90a4f2959a0eb6d7b01e7e279fb693b
      https://github.com/llvm/llvm-project/commit/f4e8fbc5e90a4f2959a0eb6d7b01e7e279fb693b
  Author: Alexander Shaposhnikov <ashaposhnikov at google.com>
  Date:   2024-07-23 (Tue, 23 Jul 2024)

  Changed paths:
    M compiler-rt/test/nsan/CMakeLists.txt
    A compiler-rt/test/nsan/alloca.cpp
    A compiler-rt/test/nsan/helpers.h
    M compiler-rt/test/nsan/lit.cfg.py
    M compiler-rt/test/nsan/lit.site.cfg.py.in
    A compiler-rt/test/nsan/sum.cpp

  Log Message:
  -----------
  [compiler-rt][nsan] Add lit config for tests (#100286)

Initial setup for tests.

Test plan: ninja check-nsan


  Commit: 63ae1e955007287ecf048d706ce3e025d20f52b8
      https://github.com/llvm/llvm-project/commit/63ae1e955007287ecf048d706ce3e025d20f52b8
  Author: Luke Lau <luke at igalia.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    M llvm/include/llvm/IR/IntrinsicsRISCV.td
    M llvm/lib/Target/RISCV/RISCVGatherScatterLowering.cpp
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    R llvm/test/CodeGen/RISCV/pr89833.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-strided-load-store.ll
    R llvm/test/CodeGen/RISCV/rvv/strided-load-store-intrinsics.ll
    M llvm/test/CodeGen/RISCV/rvv/strided-load-store.ll

  Log Message:
  -----------
  [RISCV] Emit VP strided loads/stores in RISCVGatherScatterLowering (#98111)

RISCVGatherScatterLowering is the last user of
riscv_masked_strided_{load,store} after #98131 and #98112, this patch
changes it to emit the VP equivalent instead. This allows us to remove
the masked_strided intrinsics so we have only have one lowering path.

riscv_masked_strided_{load,store} didn't have AVL operands and were
always VLMAX, so this passes in the fixed or scalable element count to
the EVL instead, which RISCVVectorPeephole should now convert to VLMAX
after #97800.
For loads we also use a vp_select to get passthru (mask undisturbed)
behaviour


  Commit: dbe308c000f3401cbf6bb55f2b8d606fe091dcfe
      https://github.com/llvm/llvm-project/commit/dbe308c000f3401cbf6bb55f2b8d606fe091dcfe
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/AST/ExprConstant.cpp
    M clang/test/CXX/drs/cwg18xx.cpp
    M clang/test/SemaCXX/constant-expression-cxx11.cpp
    M clang/test/SemaCXX/constant-expression-cxx2b.cpp
    M clang/test/SemaCXX/cxx23-invalid-constexpr.cpp

  Log Message:
  -----------
  [clang][ExprConst] Allow non-literal types in C++23 (#100062)

Instead of diagnosing non-literal types in C++23, allow them and later
diagnose them differently, e.g. because they have a non-constexpr
constructor, destructor, etc.

For this test:
```c++
struct NonLiteral {
  NonLiteral() {}
};
constexpr int foo() {
  NonLiteral L;
  return 1;
}

// static_assert(foo() == 1);
```
The current diagnostics with c++20/c++23 are:
```console
~/code/llvm-project/build » clang -c array.cpp -std=c++20
array.cpp:91:14: error: variable of non-literal type 'NonLiteral' cannot be defined in a constexpr function before C++23
   91 |   NonLiteral L;
      |              ^
array.cpp:87:8: note: 'NonLiteral' is not literal because it is not an aggregate and has no constexpr constructors other than copy or move constructors
   87 | struct NonLiteral {
      |        ^
1 error generated.
------------------------------------------------------------
~/code/llvm-project/build » clang -c array.cpp -std=c++23
(no output)
```

With the `static_assert` enabled, compiling with `-std=c++23` prints:
```console
array.cpp:95:15: error: static assertion expression is not an integral constant expression
   95 | static_assert(foo() == 1);
      |               ^~~~~~~~~~
array.cpp:91:14: note: non-literal type 'NonLiteral' cannot be used in a constant expression
   91 |   NonLiteral L;
      |              ^
array.cpp:95:15: note: in call to 'foo()'
   95 | static_assert(foo() == 1);
      |               ^~~~~
1 error generated.
```

As mentioned in #60311, this is confusing. The output with c++20
suggests that using c++23 will make the problem go away, but it's
diagnosed the same when running the function.

With this commit, the output instead diagnoses _why_ the non-literal
type can't be used:
```console
array.cpp:95:15: error: static assertion expression is not an integral constant expression
   95 | static_assert(foo() == 1);
      |               ^~~~~~~~~~
array.cpp:91:14: note: non-constexpr constructor 'NonLiteral' cannot be used in a constant expression
   91 |   NonLiteral L;
      |              ^
array.cpp:95:15: note: in call to 'foo()'
   95 | static_assert(foo() == 1);
      |               ^~~~~
array.cpp:88:3: note: declared here
   88 |   NonLiteral() {}
      |   ^
1 error generated.

``` 




Fixes #60311


  Commit: e7698a13e319a9919af04d3d693a6f6ea7168a44
      https://github.com/llvm/llvm-project/commit/e7698a13e319a9919af04d3d693a6f6ea7168a44
  Author: Lang Hames <lhames at gmail.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    M llvm/lib/ExecutionEngine/JITLink/COFFLinkGraphBuilder.cpp
    M llvm/lib/ExecutionEngine/JITLink/ELFLinkGraphBuilder.h
    M llvm/lib/ExecutionEngine/JITLink/MachOLinkGraphBuilder.cpp
    M llvm/lib/ExecutionEngine/Orc/Core.cpp
    M llvm/test/ExecutionEngine/JITLink/x86-64/COFF_common_symbol.s

  Log Message:
  -----------
  Re-apply "[ORC][JITLink] Treat common symbols as weak definitions." with fixes.

This reapplies 785d376d123, which was reverted in c49837f5f68 due to bot
failures. The fix was to relax some asserts to allow common symbols to be
resolved with either common or weak flags, rather than requiring one or the
other.


  Commit: 63e179929e2c31426717f841e786f1a035bed934
      https://github.com/llvm/llvm-project/commit/63e179929e2c31426717f841e786f1a035bed934
  Author: Lang Hames <lhames at gmail.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    A llvm/test/ExecutionEngine/JITLink/AArch64/Inputs/MachO_common_x_and_addr_getter.s
    A llvm/test/ExecutionEngine/JITLink/AArch64/Inputs/MachO_strong_x_and_addr_getter.s
    A llvm/test/ExecutionEngine/JITLink/AArch64/MachO_common_symbol_x_multiple_defs.s

  Log Message:
  -----------
  [ORC] Re-add test files that were accidentally left out of e7698a13e31.


  Commit: 455990d18fe488ff6c8e3b161434e35d412b43a2
      https://github.com/llvm/llvm-project/commit/455990d18fe488ff6c8e3b161434e35d412b43a2
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/SelectionDAG.h
    M llvm/include/llvm/CodeGen/SelectionDAGISel.h
    M llvm/include/llvm/Passes/MachinePassRegistry.def
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp
    M llvm/unittests/CodeGen/AArch64SelectionDAGTest.cpp
    M llvm/unittests/CodeGen/SelectionDAGAddressAnalysisTest.cpp
    M llvm/unittests/CodeGen/SelectionDAGPatternMatchTest.cpp

  Log Message:
  -----------
  Reland "SelectionDAG: Avoid using MachineFunction::getMMI" (#99779)

Reverts llvm/llvm-project#99777

Co-authored-by: Matt Arsenault <Matthew.Arsenault at amd.com>


  Commit: ddb75ca6062c9312896647c206f8b96574bef11d
      https://github.com/llvm/llvm-project/commit/ddb75ca6062c9312896647c206f8b96574bef11d
  Author: Chaitanya <Krishna.Sankisa at amd.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    A llvm/lib/Target/AMDGPU/Utils/AMDGPUAsanInstrumentation.cpp
    A llvm/lib/Target/AMDGPU/Utils/AMDGPUAsanInstrumentation.h
    M llvm/lib/Target/AMDGPU/Utils/CMakeLists.txt

  Log Message:
  -----------
  [AMDGPU] Utilities to asan instrument memory instructions. (#98863)

This change adds the utilities required to asan instrument memory
instructions. In "amdgpu-sw-lower-lds" pass #87265, during lowering from
LDS to global memory, new instructions in global memory would be created 
which need to be asan instrumented.


  Commit: ef1c70d26b7e84a6f47c0c6a868b769935b2b008
      https://github.com/llvm/llvm-project/commit/ef1c70d26b7e84a6f47c0c6a868b769935b2b008
  Author: Dmitry Chestnykh <dm.chestnykh at gmail.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    M compiler-rt/lib/sanitizer_common/sanitizer_linux.cpp
    A compiler-rt/test/sanitizer_common/TestCases/Linux/dump_registers_aarch64.cpp
    A compiler-rt/test/sanitizer_common/TestCases/Linux/dump_registers_arm.cpp

  Log Message:
  -----------
  [compiler-rt] Implement `DumpAllRegisters` for arm-linux and aarch64-linux (#99613)

Examples of the output:

ARM:
```
# ./a.out 
AddressSanitizer:DEADLYSIGNAL
=================================================================
==122==ERROR: AddressSanitizer: SEGV on unknown address 0x0000007a (pc 0x76e13ac0 bp 0x7eb7fd00 sp 0x7eb7fcc8 T0)
==122==The signal is caused by a READ memory access.
==122==Hint: address points to the zero page.
    #0 0x76e13ac0  (/lib/libc.so.6+0x7cac0)
    #1 0x76dce680 in gsignal (/lib/libc.so.6+0x37680)
    #2 0x005c2250  (/root/a.out+0x145250)
    #3 0x76db982c  (/lib/libc.so.6+0x2282c)
    #4 0x76db9918 in __libc_start_main (/lib/libc.so.6+0x22918)

==122==Register values:
 r0 = 0x00000000   r1 = 0x0000007a   r2 = 0x0000000b   r3 = 0x76d95020  
 r4 = 0x0000007a   r5 = 0x00000001   r6 = 0x005dcc5c   r7 = 0x0000010c  
 r8 = 0x0000000b   r9 = 0x76f9ece0  r10 = 0x00000000  r11 = 0x7eb7fd00  
r12 = 0x76dce670   sp = 0x7eb7fcc8   lr = 0x76e13ab4   pc = 0x76e13ac0  
AddressSanitizer can not provide additional info.
SUMMARY: AddressSanitizer: SEGV (/lib/libc.so.6+0x7cac0) 
==122==ABORTING
```

AArch64:
```
# ./a.out 
UndefinedBehaviorSanitizer:DEADLYSIGNAL
==99==ERROR: UndefinedBehaviorSanitizer: SEGV on unknown address 0x000000000063 (pc 0x007fbbbc5860 bp 0x007fcfdcb700 sp 0x007fcfdcb700 T99)
==99==The signal is caused by a UNKNOWN memory access.
==99==Hint: address points to the zero page.
    #0 0x007fbbbc5860  (/lib64/libc.so.6+0x82860)
    #1 0x007fbbb81578  (/lib64/libc.so.6+0x3e578)
    #2 0x00556051152c  (/root/a.out+0x3152c)
    #3 0x007fbbb6e268  (/lib64/libc.so.6+0x2b268)
    #4 0x007fbbb6e344  (/lib64/libc.so.6+0x2b344)
    #5 0x0055604e45ec  (/root/a.out+0x45ec)

==99==Register values:
 x0 = 0x0000000000000000   x1 = 0x0000000000000063   x2 = 0x000000000000000b   x3 = 0x0000007fbbb41440  
 x4 = 0x0000007fbbb41580   x5 = 0x3669288942d44cce   x6 = 0x0000000000000000   x7 = 0x00000055605110b0  
 x8 = 0x0000000000000083   x9 = 0x0000000000000000  x10 = 0x0000000000000000  x11 = 0x0000000000000000  
x12 = 0x0000007fbbdb3360  x13 = 0x0000000000010000  x14 = 0x0000000000000039  x15 = 0x00000000004113a0  
x16 = 0x0000007fbbb81560  x17 = 0x0000005560540138  x18 = 0x000000006474e552  x19 = 0x0000000000000063  
x20 = 0x0000000000000001  x21 = 0x000000000000000b  x22 = 0x0000005560511510  x23 = 0x0000007fcfdcb918  
x24 = 0x0000007fbbdb1b50  x25 = 0x0000000000000000  x26 = 0x0000007fbbdb2000  x27 = 0x000000556053f858  
x28 = 0x0000000000000000   fp = 0x0000007fcfdcb700   lr = 0x0000007fbbbc584c   sp = 0x0000007fcfdcb700  
UndefinedBehaviorSanitizer can not provide additional info.
SUMMARY: UndefinedBehaviorSanitizer: SEGV (/lib64/libc.so.6+0x82860) 
==99==ABORTING
```


  Commit: fad17b43dbc09ac7e0a95535459845f72c2b739a
      https://github.com/llvm/llvm-project/commit/fad17b43dbc09ac7e0a95535459845f72c2b739a
  Author: Yi-Chi Lee <55395582+yichi170 at users.noreply.github.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    M clang/lib/Lex/PPMacroExpansion.cpp

  Log Message:
  -----------
  [clang] replaced the usage of `asctime` with `std::put_time` (#99075)

In `clang/lib/Lex/PPMacroExpansion.cpp`, replaced the usage of the
obsolete `asctime` function with `std::put_time` for generating
timestamp strings.

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


  Commit: d09fc8f0b7875a4dadb50aae5f47788124d6b526
      https://github.com/llvm/llvm-project/commit/d09fc8f0b7875a4dadb50aae5f47788124d6b526
  Author: Dmitry Chestnykh <dm.chestnykh at gmail.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    M compiler-rt/lib/builtins/cpu_model/x86.c

  Log Message:
  -----------
  [compiler-rt][builtins] Fix `-Werror` build problem (#100312)

GCC-14.1.1 emit an error due to uninitialized variables
x86.c:303:17: error: ‘EAX’ may be used uninitialized
[-Werror=maybe-uninitialized]
x86.c:970:35: error: ‘MaxLevel’ may be used uninitialized
[-Werror=maybe-uninitialized]
x86.c:987:48: error: ‘MaxExtLevel’ may be used uninitialized
[-Werror=maybe-uninitialized]
It doesn't handle properly that these variables initialized indirectly
in functions that takes pointers to them


  Commit: c34d673b02ead039acd107f096c1f32c16b61e07
      https://github.com/llvm/llvm-project/commit/c34d673b02ead039acd107f096c1f32c16b61e07
  Author: Rainer Orth <ro at gcc.gnu.org>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    M compiler-rt/CMakeLists.txt
    M compiler-rt/cmake/config-ix.cmake
    M compiler-rt/lib/asan/tests/CMakeLists.txt
    M compiler-rt/test/asan/Unit/lit.site.cfg.py.in

  Log Message:
  -----------
  [asan][cmake][test] Fix finding dynamic asan runtime lib (#100083)

In a `runtimes` build on Solaris/amd64, there are two failues:
```
  AddressSanitizer-Unit :: ./Asan-i386-calls-Dynamic-Test/failed_to_discover_tests_from_gtest
  AddressSanitizer-Unit :: ./Asan-i386-inline-Dynamic-Test/failed_to_discover_tests_from_gtest
```
This happens when `lit` enumerates the tests with `--gtest_list_tests
--gtest_filter=-*DISABLED_*`. The error is twofold:

- The `LD_LIBRARY_PATH*` variables point at the 64-bit directory
(`lib/clang/19/lib/x86_64-pc-solaris2.11`) for a 32-bit test:
  ``` 
ld.so.1: Asan-i386-calls-Dynamic-Test: fatal:
/var/llvm/local-amd64-release-stage2-A-flang-clang18-runtimes/tools/clang/stage2-bins/./lib/../lib/clang/19/lib/x86_64-pc-solaris2.11/libclang_rt.asan.so:
wrong ELF class: ELFCLASS64
  ```
- While the tests are linked with `-Wl,-rpath`, that path always is the
64-bit directory again.

Accordingly, the fix consists of two parts:
- The code in `compiler-rt/test/asan/Unit/lit.site.cfg.py.in` to adjust
the `LD_LIBRARY_PATH*` variables is guarded by a `config.target_arch !=
config.host_arch` condition. This is wrong in two ways:
- The adjustment is always needed independent of the host arch. This is
what `compiler-rt/test/lit.common.cfg.py` already does.
- Besides, `config.host_arch` is ultimately set from
`CMAKE_HOST_SYSTEM_PROCESSOR`. On Linux/x86_64, this is `x86_64` (`uname
-m`) while on Solaris/amd64 it's `i386` (`uname -p`), explaining why the
transformation is skipped on Solaris, but not on Linux.
- Besides, `RPATH` needs to be set to the correct subdirectory, so
instead of using the default arch in `compiler-rt/CMakeLists.txt`, this
patch moves the code to a function which takes the test's arch into
account.

Tested on `amd64-pc-solaris2.11` and `x86_64-pc-linux-gnu`.


  Commit: 3993a47bb58f7b6da9940d084e62e54a821e81fc
      https://github.com/llvm/llvm-project/commit/3993a47bb58f7b6da9940d084e62e54a821e81fc
  Author: Edd Dawson <edd.dawson at sony.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/lib/Driver/ToolChains/PS4CPU.cpp
    M clang/test/Driver/debug-options.c
    M clang/test/Driver/lto-jobs.c
    M clang/test/Driver/ps4-linker.c
    M llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
    M llvm/lib/CodeGen/AsmPrinter/DwarfDebug.h
    A llvm/test/DebugInfo/X86/debug-aranges-sce-tuning.test
    M llvm/test/DebugInfo/debuglineinfo-path.ll

  Log Message:
  -----------
  [PS4/PS5][Driver][DWARF] Always emit .debug_aranges for SCE tuning (#100160)

Some of SIE's post-mortem analysis infrastructure currently makes use of
.debug_aranges, so we'd like to ensure the section's presence in
PlayStation binaries. The simplest way to do this is to force emission
when the debugger tuning is set to SCE (which is in turn typically
initialized from the target triple). This also simplifies the driver.

llvm/test/DebugInfo/debuglineinfo-path.ll has been marked as UNSUPPORTED
on PlayStation. When aranges are emitted, the DWARF in the test case is
such that relocations need to be applied to the aranges section in order
for symbolization to work. An alternative approach would be to implement
the application of relocations in DWARFDebugArangeSet. While experiments
show that this can be made to work with a modest patch, the test cases
would be rather contrived. Since I expect the only utility for such a
change would be to make this test case pass for PlayStation targets, and
few - if any - outside of PlayStation care about aranges, UNSUPPORTED
would seem to be a more practical option.

This was originally commited as 22eb290a96 (#99629) and later reverted
at 84658fb82b (#99711) due to test failures on SIE built bots. These
failures shouldn't recur due to 3b24e5d450 (#99897) and the
aforementioned change to debuglineinfo-path.ll.

SIE tracker: TOOLCHAIN-16951


  Commit: ddf5725ef180692b60962ae56e352a7af6fc5919
      https://github.com/llvm/llvm-project/commit/ddf5725ef180692b60962ae56e352a7af6fc5919
  Author: Dmitry Chestnykh <dm.chestnykh at gmail.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    M compiler-rt/lib/nsan/nsan.cpp
    M llvm/lib/Transforms/Instrumentation/NumericalStabilitySanitizer.cpp
    M llvm/test/Instrumentation/NumericalStabilitySanitizer/memory.ll

  Log Message:
  -----------
  [nsan] Emit calls to optimized functions (#98900)

As previously noted in nsan.cpp we can implement
optimized variants of `__nsan_copy_values` and
`__nsan_set_value_unknown` if a memory operation
size is known.
Now the instrumentation creates calls to optimized functions if there is
4, 8 or 16-byte memory operation like
`memset(X, value, 4/8/16)` or `memcpy(dst, src, 4/8/16)`
nsan.cpp provides definitions of the optimized functions.


  Commit: a3de21cac1fb8f1dd98cfe1d1443e2d3f0a97351
      https://github.com/llvm/llvm-project/commit/a3de21cac1fb8f1dd98cfe1d1443e2d3f0a97351
  Author: Sam Parker <sam.parker at arm.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    M llvm/lib/Target/WebAssembly/WebAssemblyInstrSIMD.td
    M llvm/test/CodeGen/WebAssembly/simd-arith.ll
    M llvm/test/CodeGen/WebAssembly/vector-reduce.ll

  Log Message:
  -----------
  [WebAssembly] Ofast pmin/pmax pattern matchers (#100107)

With fast-math, the ordered setcc nodes are converted to setcc nodes
which do not care about NaNs, so add patterns that use setlt, setle,
setgt and setge.


  Commit: 1ead51a86c6c746a1b9948ca1ee142df223ffebd
      https://github.com/llvm/llvm-project/commit/1ead51a86c6c746a1b9948ca1ee142df223ffebd
  Author: jeanPerier <jperier at nvidia.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    M flang/lib/Optimizer/Builder/FIRBuilder.cpp
    M flang/lib/Optimizer/Transforms/AbstractResult.cpp
    M flang/test/Fir/abstract-results.fir

  Log Message:
  -----------
  [flang] fix C_PTR function result lowering (#100082)

Functions returning C_PTR were lowered to function returning intptr (i64
on 64bit arch). This caused conflicts when these functions were defined
as returning !fir.ref<none>/llvm.ptr in other compiler generated
contexts (e.g., malloc).

Lower them to return !fir.ref<none>.

This should deal with https://github.com/llvm/llvm-project/issues/97325
and https://github.com/llvm/llvm-project/issues/98644.


  Commit: 9a258664024d12a06ba8eb9344e270a9bb5f5d87
      https://github.com/llvm/llvm-project/commit/9a258664024d12a06ba8eb9344e270a9bb5f5d87
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/MIRPrinter.h
    M llvm/include/llvm/CodeGen/MachineModuleSlotTracker.h
    M llvm/lib/CodeGen/MIRPrinter.cpp
    M llvm/lib/CodeGen/MIRPrintingPass.cpp
    M llvm/lib/CodeGen/MachineModuleSlotTracker.cpp
    M llvm/tools/llvm-reduce/ReducerWorkItem.cpp
    M llvm/unittests/MIR/MachineMetadata.cpp

  Log Message:
  -----------
  CodeGen: Avoid using MachineFunction::getMMI in MachineModuleSlotTracker (#100310)


  Commit: ba8126b6fef79bd344a247f6291aaec7b67bdff0
      https://github.com/llvm/llvm-project/commit/ba8126b6fef79bd344a247f6291aaec7b67bdff0
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    A llvm/test/Transforms/LoopVectorize/RISCV/dead-ops-cost.ll

  Log Message:
  -----------
  [LV] Mark dead instructions in loop as free.

Update collectValuesToIgnore to also ignore dead instructions in the
loop. Such instructions will be removed by VPlan-based DCE and won't be
considered by the VPlan-based cost model.

This closes a gap between the legacy and VPlan-based cost model. In
practice with the default pipelines, there shouldn't be any dead
instructions in loops reaching LoopVectorize, but it is easy to generate
such cases by hand or automatically via fuzzers.

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


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

  Changed paths:
    M llvm/lib/Target/M68k/M68kFrameLowering.cpp

  Log Message:
  -----------
  M68k: Remove hasDebugInfo check

Follow up to a03935b9841c4e30b27dd9399e0b93191ad443f3


  Commit: 666e3326fedfb6a033494c36c36aa95c4124d642
      https://github.com/llvm/llvm-project/commit/666e3326fedfb6a033494c36c36aa95c4124d642
  Author: Akira Hatanaka <ahatanak at gmail.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/include/clang/Basic/TokenKinds.def
    M clang/include/clang/Parse/Parser.h
    M clang/include/clang/Sema/Sema.h
    M clang/lib/AST/ExprConstant.cpp
    M clang/lib/AST/ItaniumMangle.cpp
    M clang/lib/Headers/ptrauth.h
    M clang/lib/Parse/ParseExpr.cpp
    M clang/lib/Sema/SemaChecking.cpp
    M clang/lib/Sema/SemaExpr.cpp
    A clang/test/AST/ast-dump-ptrauth-json.cpp
    M clang/test/CodeGenCXX/mangle-fail.cpp
    M clang/test/Sema/ptrauth-intrinsics-macro.c
    A clang/test/SemaCXX/ptrauth-type-discriminator.cpp

  Log Message:
  -----------
  [PAC] Define __builtin_ptrauth_type_discriminator (#100204)

The builtin computes the discriminator for a type, which can be used to
sign/authenticate function pointers and member function pointers.

If the type passed to the builtin is a C++ member function pointer type,
the result is the discriminator used to signed member function pointers
of that type. If the type is a function, function pointer, or function
reference type, the result is the discriminator used to sign functions
of that type. It is ill-formed to use this builtin with any other type.

A call to this function is an integer constant expression.

Co-Authored-By: John McCall rjmccall at apple.com


  Commit: 6a1b119035bd329c54f6b5438e6989e49dcb0adb
      https://github.com/llvm/llvm-project/commit/6a1b119035bd329c54f6b5438e6989e49dcb0adb
  Author: Jessica Del <50999226+OutOfCache at users.noreply.github.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    M llvm/include/llvm/IR/IntrinsicsAMDGPU.td
    M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
    M llvm/lib/Target/AMDGPU/AMDGPURegisterBankInfo.cpp
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    A llvm/test/CodeGen/AMDGPU/llvm.amdgcn.struct.atomic.buffer.load.ll
    A llvm/test/CodeGen/AMDGPU/llvm.amdgcn.struct.ptr.atomic.buffer.load.ll

  Log Message:
  -----------
  [AMDGPU] Add intrinsics for atomic struct buffer loads (#100140)

Mark these intrinsics as atomic loads within LLVM to prevent hoisting
out of loops in cases where
the load is considered invariant.

Similar to https://github.com/llvm/llvm-project/pull/97707, but for
struct buffer loads.


  Commit: 7fad04e94b7b594389111ae7eca0883ef18dc90b
      https://github.com/llvm/llvm-project/commit/7fad04e94b7b594389111ae7eca0883ef18dc90b
  Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    M llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp
    M llvm/test/Transforms/LoopStrengthReduce/AArch64/vscale-fixups.ll

  Log Message:
  -----------
  [LSR] Fix matching vscale immediates (#100080)

Somewhat confusingly a `SCEVMulExpr` is a `SCEVNAryExpr`, so can have
> 2 operands. Previously, the vscale immediate matching did not check
the number of operands of the `SCEVMulExpr`, so would ignore any
operands after the first two.

This led to incorrect codegen (and results) for ArmSME in IREE
(https://github.com/iree-org/iree), which sometimes addresses things
that are a `vscale * vscale` multiple away. The test added with this
change shows an example reduced from IREE. The second write should
be offset from the first `16 * vscale * vscale` (* 4 bytes), however,
previously LSR dropped the second vscale and instead offset the write by
`#4, mul vl`, which is an offset of `16 * vscale` (* 4 bytes).


  Commit: 3cb5604d2c73b56f5e3ee48832591cab3d754b1d
      https://github.com/llvm/llvm-project/commit/3cb5604d2c73b56f5e3ee48832591cab3d754b1d
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/TargetInstrInfo.h
    M llvm/lib/CodeGen/MachineOutliner.cpp
    M llvm/lib/CodeGen/TargetInstrInfo.cpp
    M llvm/lib/Target/AArch64/AArch64InstrInfo.cpp
    M llvm/lib/Target/AArch64/AArch64InstrInfo.h
    M llvm/lib/Target/ARM/ARMBaseInstrInfo.cpp
    M llvm/lib/Target/ARM/ARMBaseInstrInfo.h
    M llvm/lib/Target/RISCV/RISCVInstrInfo.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfo.h
    M llvm/lib/Target/X86/X86InstrInfo.cpp
    M llvm/lib/Target/X86/X86InstrInfo.h

  Log Message:
  -----------
  MachineOutliner: Use PM to query MachineModuleInfo (#99688)

Avoid getting this from the MachineFunction


  Commit: cd82fee3918c4244777310cb97cd02e1ddcbfcf0
      https://github.com/llvm/llvm-project/commit/cd82fee3918c4244777310cb97cd02e1ddcbfcf0
  Author: Dmitry Chestnykh <dm.chestnykh at gmail.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

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

  Log Message:
  -----------
  [nsan] Fix `Wstring-conversion` error (#100328)

Fix error: implicit conversion turns string literal into bool: 'const
char[46]' to 'bool' [-Werror,-Wstring-conversion]


  Commit: 71a848632e2fbef3f2dc97c2dae845ddca0ec47e
      https://github.com/llvm/llvm-project/commit/71a848632e2fbef3f2dc97c2dae845ddca0ec47e
  Author: David Spickett <david.spickett at linaro.org>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    M libcxx/test/libcxx/clang_modules_include.gen.py
    M libcxx/test/std/localization/locale.categories/category.ctype/facet.ctype.special/facet.ctype.char.statics/classic_table.pass.cpp

  Log Message:
  -----------
  [libcxx][test] Update picolib xfails (#99631)

clang_modules_include.gen.py works now, and I added some background to
classic_table.pass.cpp.

Opened https://github.com/picolibc/picolibc/issues/778 to see if that
one is possible to fix.


  Commit: f0bd705c9b6bd59496b44934a893a5b74085a376
      https://github.com/llvm/llvm-project/commit/f0bd705c9b6bd59496b44934a893a5b74085a376
  Author: John Brawn <john.brawn at arm.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    M llvm/lib/CodeGen/MachineBlockPlacement.cpp
    A llvm/test/CodeGen/ARM/block-order.mir

  Log Message:
  -----------
  [CodeGen] Restore MachineBlockPlacement block ordering (#99351)

PR #91843 changed the algorithm used to find the next unplaced block so
that it iterates through the blocks in BlockFilter instead of iterating
through the blocks in the function and checking if they are in the block
filter. Unfortunately this sometimes results in a different block
ordering being chosen, as the order of blocks in BlockFilter comes from
the order in MachineLoopInfo, and in some cases this differs from the
order they are in the function. This can also give an end result that
has worse performance.

Fix this by making collectLoopBlockSet place blocks in its output in the
order that they are in the function.


  Commit: d36edf8146cfea9f0407e2fb26283297eb6a6ac4
      https://github.com/llvm/llvm-project/commit/d36edf8146cfea9f0407e2fb26283297eb6a6ac4
  Author: Timm Bäder <tbaeder at redhat.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

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

  Log Message:
  -----------
  [clang][Interp] Bail out on value dependent variable initializers


  Commit: aa53f0d6fd3ec9b4cec9dd14d4c1d1a6c4d7838c
      https://github.com/llvm/llvm-project/commit/aa53f0d6fd3ec9b4cec9dd14d4c1d1a6c4d7838c
  Author: Brandon Wu <brandon.wu at sifive.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

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

  Log Message:
  -----------
  [ASTContext] Make the end of the switch case unreachable in `encodeTypeForFunctionPointerAuth` (#99763)

This prevent the warning from compiler.


  Commit: cba63c0f92d14fac238c52e2b60ae81e530acd53
      https://github.com/llvm/llvm-project/commit/cba63c0f92d14fac238c52e2b60ae81e530acd53
  Author: Sergio Afonso <safonsof at amd.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/OpenMP/CMakeLists.txt

  Log Message:
  -----------
  [MLIR][OpenMP] Keep -verify-openmp-ops output as dependency (#99638)

Currently, the `mlir-tblgen -verify-openmp-ops` pseudo-backend, which
only performs an OpenMP dialect-specific set of checks and produces no
output, is prevented from being added as a dependency to the
`MLIROpenMPOpsIncGen` tablegen target.

However, a consequence of this is that it is not triggered with every
modification of the OpenMPOps.td file it's intended to check, although
it should. This patch fixes the issue by letting the empty output file
to be added to the `TABLEGEN_OUTPUT` CMake variable used by the
`add_public_tablegen_target` command below to set up dependencies.


  Commit: 05e95067eeaaf4bac820d10abe146db49925a195
      https://github.com/llvm/llvm-project/commit/05e95067eeaaf4bac820d10abe146db49925a195
  Author: Luke Lau <luke at igalia.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    R llvm/test/CodeGen/RISCV/rvv/combine-vmv.ll
    A llvm/test/CodeGen/RISCV/rvv/vmv.v.v-peephole.ll

  Log Message:
  -----------
  [RISCV] Update combine-vmv.ll to have more foldable cases. NFC

A lot of cases have differing AVLs which aren't foldable, update them so the peephole triggers on them and add explicit cases for non-foldable AVLs.

Also rename it to vmv.v.v-peephole.ll since it's not actually a DAG combine.

And remove a TODO, it's correct to fold if the two passthrus are the same.


  Commit: 893a303962608469ec5bd01fe44e82c935152e9c
      https://github.com/llvm/llvm-project/commit/893a303962608469ec5bd01fe44e82c935152e9c
  Author: Pavel Skripkin <paskripkin at gmail.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/docs/analyzer/checkers/mismatched_deallocator_example.cpp
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/lib/Sema/SemaDeclAttr.cpp
    M clang/lib/StaticAnalyzer/Checkers/MallocChecker.cpp
    M clang/test/Analysis/Inputs/expected-plists/plist-macros.cpp.plist
    M clang/test/Analysis/Malloc+MismatchedDeallocator+NewDelete.cpp
    M clang/test/Analysis/MismatchedDeallocator-checker-test.mm
    M clang/test/Analysis/NewDelete-intersections.mm
    M clang/test/Analysis/free.c
    M clang/test/Analysis/free.cpp
    M clang/test/Analysis/getline-alloc.c
    M clang/test/Analysis/kmalloc-linux.c
    M clang/test/Analysis/malloc-fnptr-plist.c
    M clang/test/Analysis/malloc-std-namespace.cpp
    M clang/test/Analysis/malloc.c
    M clang/test/Analysis/malloc.mm
    M clang/test/Analysis/plist-macros.cpp
    M clang/test/Analysis/weak-functions.c
    M clang/test/Sema/attr-ownership.c

  Log Message:
  -----------
  [clang][analyzer] Support `ownership_{returns,takes}` attributes (#98941)

Add support for checking mismatched ownership_returns/ownership_takes attributes.

Closes #76861


  Commit: 1031335f2ee1879737576fde3a3425ce0046e773
      https://github.com/llvm/llvm-project/commit/1031335f2ee1879737576fde3a3425ce0046e773
  Author: Mitch Phillips <mitchp at google.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    M libcxx/include/__math/hypot.h
    M libcxx/include/cmath
    M libcxx/test/libcxx/transitive_includes/cxx17.csv
    M libcxx/test/libcxx/transitive_includes/cxx20.csv
    M libcxx/test/libcxx/transitive_includes/cxx23.csv
    M libcxx/test/libcxx/transitive_includes/cxx26.csv
    M libcxx/test/std/numerics/c.math/cmath.pass.cpp
    M libcxx/test/support/fp_compare.h

  Log Message:
  -----------
  Revert "[libc++][math] Fix undue overflowing of `std::hypot(x,y,z)` (#93350)"

This reverts commit 9628777479a970db5d0c2d0b456dac6633864760.

More details in https://github.com/llvm/llvm-project/pull/93350, but
this broke the PowerPC sanitizer bots.


  Commit: 2ce865d4905970c07477a9c4e37159664a785c81
      https://github.com/llvm/llvm-project/commit/2ce865d4905970c07477a9c4e37159664a785c81
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    M llvm/lib/Target/ARM/ARMBaseInstrInfo.cpp

  Log Message:
  -----------
  ARM: Avoid using MachineFunction::getMMI


  Commit: 68a0d0c76223736351fd7c452bca3ba9d80ca342
      https://github.com/llvm/llvm-project/commit/68a0d0c76223736351fd7c452bca3ba9d80ca342
  Author: Kareem Ergawy <kareem.ergawy at amd.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    M flang/lib/Lower/OpenMP/OpenMP.cpp
    M flang/test/Lower/OpenMP/firstprivate-commonblock.f90
    M flang/test/Lower/OpenMP/private-commonblock.f90

  Log Message:
  -----------
  [flang][OpenMP] Handle common blocks in delayed privatization (#100317)

Adds proper mapping of common block elements to block arguments in
parallel regions when delayed privatization is enabled.


  Commit: a5bc549c5058cb75d5dab44422a055ab06580766
      https://github.com/llvm/llvm-project/commit/a5bc549c5058cb75d5dab44422a055ab06580766
  Author: Nico Weber <thakis at chromium.org>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    M llvm/utils/gn/secondary/compiler-rt/lib/builtins/BUILD.gn

  Log Message:
  -----------
  [gn] port 73ac9536268f


  Commit: 559be8e2b55afbf6736fed646542fb25793f0f7e
      https://github.com/llvm/llvm-project/commit/559be8e2b55afbf6736fed646542fb25793f0f7e
  Author: DianQK <dianqk at dianqk.net>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    M llvm/lib/Transforms/IPO/FunctionAttrs.cpp
    M llvm/test/Transforms/FunctionAttrs/argmemonly.ll

  Log Message:
  -----------
  Reapply "[FunctionAttrs] Determine underlying object by `getUnderlyingObjectAggressive` (#100102)"

Added handling for `AllocaInst`.

This reverts commit 1ee686a55aa6365eff39bbd1dc2059b16be6c2f1.


  Commit: 59eae919c938f890e9b9b4be8a3fa3cb1b11ed89
      https://github.com/llvm/llvm-project/commit/59eae919c938f890e9b9b4be8a3fa3cb1b11ed89
  Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    M llvm/include/llvm/Analysis/SimplifyQuery.h
    M llvm/lib/Analysis/ValueTracking.cpp
    A llvm/test/Transforms/InstCombine/pr100298.ll

  Log Message:
  -----------
  [ValueTracking] Don't use CondContext in dataflow analysis of phi nodes (#100316)

See the following case:
```
define i16 @pr100298() {
entry:
  br label %for.inc

for.inc:
  %indvar = phi i32 [ -15, %entry ], [ %mask, %for.inc ]
  %add = add nsw i32 %indvar, 9
  %mask = and i32 %add, 65535
  %cmp1 = icmp ugt i32 %mask, 5
  br i1 %cmp1, label %for.inc, label %for.end

for.end:
  %conv = trunc i32 %add to i16
  %cmp2 = icmp ugt i32 %mask, 3
  %shl = shl nuw i16 %conv, 14
  %res = select i1 %cmp2, i16 %conv, i16 %shl
  ret i16 %res
}
```

When computing knownbits of `%shl` with `%cmp2=false`, we cannot use
this condition in the analysis of `%mask (%for.inc -> %for.inc)`.
 
Fixes https://github.com/llvm/llvm-project/issues/100298.


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

  Changed paths:
    M libc/cmake/modules/LLVMLibCLibraryRules.cmake
    M libc/docs/gpu/building.rst
    M libc/docs/gpu/using.rst
    M libc/lib/CMakeLists.txt

  Log Message:
  -----------
  [libc] Remove 'packaged' GPU build support (#100208)

Summary:
Previously, the GPU built the `libc` in a fat binary version that was
used to pass this to the link job in offloading languages like CUDA or
OpenMP. This was mostly required because NVIDIA couldn't consume the
standard static library version. Recent patches have now created the
`clang-nvlink-wrapper` which lets us do that. Now, the C library is just
included implicitly by the toolchain (or passed with -Xoffload-linker
-lc).

This code can be fully removed, which will heavily simplify the build
(and removed some bugs and garbage files I've encoutnered).


  Commit: 99c5140bb2b025cb91029792941e819bb30b39a0
      https://github.com/llvm/llvm-project/commit/99c5140bb2b025cb91029792941e819bb30b39a0
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

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

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


  Commit: 48e1eb4e6b0721488b0d07efab82bf12720186cb
      https://github.com/llvm/llvm-project/commit/48e1eb4e6b0721488b0d07efab82bf12720186cb
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    M llvm/utils/gn/secondary/llvm/lib/Target/AMDGPU/Utils/BUILD.gn

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


  Commit: e6c20e11e7bcd8d6916317888f95d98c13fdc21d
      https://github.com/llvm/llvm-project/commit/e6c20e11e7bcd8d6916317888f95d98c13fdc21d
  Author: Chaitanya <Krishna.Sankisa at amd.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    A llvm/lib/Target/AMDGPU/AMDGPUAsanInstrumentation.cpp
    A llvm/lib/Target/AMDGPU/AMDGPUAsanInstrumentation.h
    M llvm/lib/Target/AMDGPU/CMakeLists.txt
    R llvm/lib/Target/AMDGPU/Utils/AMDGPUAsanInstrumentation.cpp
    R llvm/lib/Target/AMDGPU/Utils/AMDGPUAsanInstrumentation.h
    M llvm/lib/Target/AMDGPU/Utils/CMakeLists.txt

  Log Message:
  -----------
  [AMDGPU] Move AMDGPUAsanInstrumentation outside of utils (#100323)

#98863 merged AMDGPUAsanInstrumentation module which missed
TransformUtils to be linked to AMDGPUUtils.
This PR moves AMDGPUAsanInstrumentation files outside utils folder and
adds them to AMDGPUCodegen lib.


  Commit: e1052faaf81b4cb3d1fe2f32aa09d2dbcfabee23
      https://github.com/llvm/llvm-project/commit/e1052faaf81b4cb3d1fe2f32aa09d2dbcfabee23
  Author: Ivan Kosarev <ivan.kosarev at amd.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    M llvm/test/MC/AMDGPU/gfx10_err_pos.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop1.s
    M llvm/test/MC/Disassembler/AMDGPU/decode-err.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_ds.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_smem.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_sop1.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_sop2.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_sopc.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_sopk.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_sopp.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop1.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop1_dpp16.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop1_dpp8.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop2.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop2_dpp16.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop2_dpp8.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_dpp16_from_vopc.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_dpp16_from_vopcx.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_dpp8_from_vopc.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_dpp8_from_vopcx.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_from_vopc.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_from_vopcx.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3p.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3p_dpp16.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3p_dpp8.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_sop2.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_sopk.txt

  Log Message:
  -----------
  [AMDGPU][MC][NFC] Drop remaining -wavesize32/64 attributes in tests. (#100339)

Those are not needed now that
<https://github.com/llvm/llvm-project/pull/98400> is submitted.


  Commit: 445bb35f954ecd5c60ced71523f6b32fc306d557
      https://github.com/llvm/llvm-project/commit/445bb35f954ecd5c60ced71523f6b32fc306d557
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    M libc/config/gpu/entrypoints.txt
    M libc/docs/gpu/support.rst

  Log Message:
  -----------
  [libc] Enable 'sscanf' on the GPU (#100211)

Summary:
We can enable the `sscanf` function on the GPU now.


  Commit: 404071b059818ba51b6a832e5e09a93a4a8b579e
      https://github.com/llvm/llvm-project/commit/404071b059818ba51b6a832e5e09a93a4a8b579e
  Author: Matt Davis <mattd at nvidia.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    M llvm/test/CodeGen/AMDGPU/abi-attribute-hints-undefined-behavior.ll
    M llvm/test/CodeGen/AMDGPU/bitcast-vector-extract.ll
    M llvm/test/CodeGen/AMDGPU/lds-global-non-entry-func.ll
    M llvm/test/CodeGen/AMDGPU/lower-work-group-id-intrinsics-pal.ll
    M llvm/test/CodeGen/AMDGPU/mem-builtins.ll
    M llvm/test/CodeGen/NVPTX/store-undef.ll

  Log Message:
  -----------
  [SelectionDAG] Preserve volatile undef stores. (#99918)

This patch preserves `undef` SDNodes that are `volatile` qualified.
Previously, these nodes would be discarded. The motivation behind this
change is to adhere to the
[LangRef](https://llvm.org/docs/LangRef.html#volatile-memory-accesses),
even though that doc is mostly in terms of LLVM-IR, it seems reasonable
to imply that the volatile constraints also imply to SDNodes.

> Certain memory accesses, such as
[load](https://llvm.org/docs/LangRef.html#i-load)’s,
[store](https://llvm.org/docs/LangRef.html#i-store)’s, and
[llvm.memcpy](https://llvm.org/docs/LangRef.html#int-memcpy)’s may be
marked volatile. The optimizers must not change the number of volatile
operations or change their order of execution relative to other volatile
operations. The optimizers may change the order of volatile operations
relative to non-volatile operations. This is not Java’s “volatile” and
has no cross-thread synchronization behavior.

Source: https://llvm.org/docs/LangRef.html#volatile-memory-accesses


  Commit: 929b474991ce643cff01eeeec830b29735460db4
      https://github.com/llvm/llvm-project/commit/929b474991ce643cff01eeeec830b29735460db4
  Author: David Spickett <david.spickett at linaro.org>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    M libcxx/test/std/algorithms/alg.sorting/alg.sort/sort/sort.pass.cpp

  Log Message:
  -----------
  [libcxx][test] Explain picolib unsupported in sort.pass.cpp

This is not a hidden bug, it's just a very slow test under emulation.


  Commit: 991460946886891de939203cc6a228b693efe406
      https://github.com/llvm/llvm-project/commit/991460946886891de939203cc6a228b693efe406
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    M libc/config/gpu/entrypoints.txt
    M libc/docs/gpu/support.rst

  Log Message:
  -----------
  Revert "[libc] Enable 'sscanf' on the GPU (#100211)"

Summary:
This fails tests in some situations, revert until it can be fixed.
This reverts commit 445bb35f954ecd5c60ced71523f6b32fc306d557.


  Commit: 550b83d658755664a7f0f93b36242e885743a91b
      https://github.com/llvm/llvm-project/commit/550b83d658755664a7f0f93b36242e885743a91b
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    M libc/cmake/modules/LLVMLibCLibraryRules.cmake
    M libc/docs/gpu/building.rst
    M libc/docs/gpu/using.rst
    M libc/lib/CMakeLists.txt

  Log Message:
  -----------
  Revert "[libc] Remove 'packaged' GPU build support (#100208)"

Summary:
I forgot that the OpenMP tests still look for this, reverting for now
until I can make a fix.

This reverts commit c1c6ed83e9ac13c511961e5f5791034a63168e7e.


  Commit: 4bb3a1e16f3a854d05bc0b8c5b6f8f78effb1d93
      https://github.com/llvm/llvm-project/commit/4bb3a1e16f3a854d05bc0b8c5b6f8f78effb1d93
  Author: Chris Copeland <chris at chrisnc.net>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Headers/stdatomic.h
    M clang/test/Headers/stdatomic.c

  Log Message:
  -----------
  [clang] Define `ATOMIC_FLAG_INIT` correctly for C++. (#97534)


  Commit: 20957d20913be92f9d88ea5ce862d898a386dad2
      https://github.com/llvm/llvm-project/commit/20957d20913be92f9d88ea5ce862d898a386dad2
  Author: Qiu Chaofan <qiucofan at cn.ibm.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    M clang/include/clang/Basic/CodeGenOptions.def
    M clang/include/clang/Driver/Options.td
    M clang/lib/CodeGen/CGCall.cpp
    M clang/lib/Driver/ToolChains/AIX.cpp
    A clang/test/CodeGen/PowerPC/save-reg-params.c
    A clang/test/Driver/aix-save-reg-params.c
    M clang/test/Driver/ppc-unsupported.c
    M llvm/lib/Target/PowerPC/PPCISelLowering.cpp
    A llvm/test/CodeGen/PowerPC/save-reg-params.ll

  Log Message:
  -----------
  [AIX] Add -msave-reg-params to save arguments to stack (#97524)

In PowerPC ABI, a few initial arguments are passed through registers,
but their places in parameter save area are reserved, arguments passed
by memory goes after the reserved location.

For debugging purpose, we may want to save copy of the pass-by-reg
arguments into correct places on stack. The new option achieves by
adding new function level attribute and make argument lowering part
aware of it.


  Commit: 558a8953680fd03bdd49a6708f3ea82d82328769
      https://github.com/llvm/llvm-project/commit/558a8953680fd03bdd49a6708f3ea82d82328769
  Author: Dmitry Chestnykh <dm.chestnykh at gmail.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

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

  Log Message:
  -----------
  [compiler-rt] Move `endif` to correct place (#100342)

A couple of previous commits leaded to wrong endif placement inside the
source that caused build problem in
https://lab.llvm.org/buildbot/#/builders/13/builds/1020

See #99613 #99049


  Commit: 2bb18e27b62c5b92fb704d4af373eca99c95e11b
      https://github.com/llvm/llvm-project/commit/2bb18e27b62c5b92fb704d4af373eca99c95e11b
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    M llvm/utils/gn/secondary/llvm/lib/Target/AMDGPU/BUILD.gn
    M llvm/utils/gn/secondary/llvm/lib/Target/AMDGPU/Utils/BUILD.gn

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


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

  Changed paths:
    M llvm/lib/CodeGen/MachineLoopInfo.cpp
    M llvm/test/CodeGen/AMDGPU/dpp64_combine.ll
    A llvm/test/CodeGen/AMDGPU/machinelicm-undef-use.mir

  Log Message:
  -----------
  [MachineLoopInfo] Fix assertion failure on undef use operands (#100137)

Fixes #100115


  Commit: 6da6772bf0a33131aa8540c9d4f60d5db75c32b5
      https://github.com/llvm/llvm-project/commit/6da6772bf0a33131aa8540c9d4f60d5db75c32b5
  Author: Kerry McLaughlin <kerry.mclaughlin at arm.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

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

  Log Message:
  -----------
  [AArch64][SME] Rewrite __arm_get_current_vg to preserve required registers (#100143)

The documentation for the __arm_get_current_vg support routine specifies
that the following registers are call-preserved:
 - X1-X15, X19-X29 and SP
 - Z0-Z31
 - P0-P15

This patch rewrites the implementation of this routine in compiler-rt,
as the current version does not guarantee that these registers will be
preserved.


  Commit: 07688d13414d08a1bea3cecf6607f93e4334222e
      https://github.com/llvm/llvm-project/commit/07688d13414d08a1bea3cecf6607f93e4334222e
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

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

  Log Message:
  -----------
  Revert "[LV] Add option to still enable the legacy cost model. (#99536)"

This reverts commit 9ba524427321b931bad156860755adf420aeec6a.

Remove the recently added temporary option vectorize-use-legacy-cost-model
as discussed on the PR adding it, now that we branched for 19.x.


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

  Changed paths:
    M llvm/test/CodeGen/X86/var-permute-128.ll
    M llvm/test/CodeGen/X86/var-permute-256.ll

  Log Message:
  -----------
  [X86] Add 'clamp out of range index' variable shuffles test coverage from #96754


  Commit: de8c4bef3329ce0045b8167cdb96d53b2a1509df
      https://github.com/llvm/llvm-project/commit/de8c4bef3329ce0045b8167cdb96d53b2a1509df
  Author: Kai Luo <lkail at cn.ibm.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    M compiler-rt/test/tsan/debug_alloc_stack.cpp

  Log Message:
  -----------
  [tsan] Include unistd.h to declare gettid()

Try to fix https://lab.llvm.org/buildbot/#/builders/176/builds/14400.


  Commit: 1f5807eb359fb172575e18bb063fd85e4dc836e9
      https://github.com/llvm/llvm-project/commit/1f5807eb359fb172575e18bb063fd85e4dc836e9
  Author: Andrzej Warzyński <andrzej.warzynski at arm.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    M mlir/lib/Dialect/Vector/Transforms/VectorTransforms.cpp

  Log Message:
  -----------
  [mlir][vector][nfc] Simplify `in_bounds` attr update (#100334)

Since the `in_bounds` attribute is mandatory, there's no need for logic
like this (`readOp.getInBounds()` is guaranteed to return a non-empty
ArrayRef):

```cpp
ArrayAttr inBoundsAttr = readOp.getInBounds()
    ? rewriter.getArrayAttr( readOp.getInBoundsAttr().getValue().drop_back(dimsToDrop))
    : ArrayAttr();
```

Instead, we can do this:
```cpp
ArrayAttr inBoundsAttr = rewriter.getArrayAttr(
    readOp.getInBoundsAttr().getValue().drop_back(dimsToDrop));
```

This is a small follow-up for #97049 - this change should've been
included there.


  Commit: 5b15d9c441810121c23f9f421bbb007fd4c448e8
      https://github.com/llvm/llvm-project/commit/5b15d9c441810121c23f9f421bbb007fd4c448e8
  Author: Jan Leyonberg <jan_sjodin at yahoo.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

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

  Log Message:
  -----------
  [clang][OpenMP] Propoagate debug location to OMPIRBuilder reduction codegen (#100358)

This patch propagates the debug location from Clang to the
OpenMPIRBuilder.

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


  Commit: 557a7b8ae319527110ddaac93c896b2c0e6c824c
      https://github.com/llvm/llvm-project/commit/557a7b8ae319527110ddaac93c896b2c0e6c824c
  Author: OverMighty <its.overmighty at gmail.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    M libc/test/src/math/smoke/TotalOrderMagTest.h
    M libc/test/src/math/smoke/TotalOrderTest.h

  Log Message:
  -----------
  [libc][math][c23] Fix totalorder and totalordermag smoke tests (#100354)

FPBits::signaling_nan() defaults to setting the MSB of the payload to 1.
The tests also used signaling NaNs with a payload of 0x123. With
float16, the 1 in 0x123 aligns to the MSB of the payload, therefore
0x123 is greater than the default payload. However, that is not the case
with more precise floating-point types.


  Commit: 1feef92a775daf8818faf766e0b1332421b48c5f
      https://github.com/llvm/llvm-project/commit/1feef92a775daf8818faf766e0b1332421b48c5f
  Author: Utkarsh Saxena <usx at google.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Sema/CheckExprLifetime.cpp
    M clang/test/SemaCXX/attr-lifetimebound.cpp

  Log Message:
  -----------
  Fix lifetimebound for field access (#100197)

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

There is no way to switch this off without  `-Wno-dangling`.


  Commit: 83ea7ce3a132001dfd7665c7eb50ef44cfd79802
      https://github.com/llvm/llvm-project/commit/83ea7ce3a132001dfd7665c7eb50ef44cfd79802
  Author: Amir Ayupov <aaupov at fb.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    M bolt/include/bolt/Core/BinaryContext.h
    M bolt/include/bolt/Core/BinaryFunction.h
    M bolt/lib/Core/BinaryContext.cpp
    M bolt/lib/Core/Exceptions.cpp

  Log Message:
  -----------
  [BOLT][NFC] Track fragment relationships using EquivalenceClasses

Three-way splitting can create references between split fragments (warm
to cold or vice versa) that are not handled by
`isChildOf/isParentOf/isChildOrParentOf`. Generalize fragment
relationships to allow checking if two functions belong to one group,
potentially in presence of ICF which can join multiple groups.

Test Plan: NFC for existing tests

Reviewers: maksfb, ayermolo, rafaelauler, dcci

Reviewed By: rafaelauler

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


  Commit: 9d2dd009b60793f562ba1b00e3d02773f060e4b6
      https://github.com/llvm/llvm-project/commit/9d2dd009b60793f562ba1b00e3d02773f060e4b6
  Author: Amir Ayupov <aaupov at fb.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    M bolt/lib/Core/BinaryContext.cpp
    A bolt/test/X86/three-way-split-jt.s

  Log Message:
  -----------
  [BOLT] Support more than two jump table parents

Multi-way splitting can cause multiple fragments to access the same jump
table. Relax the assumption that a jump table can only have up to two
parents.

Test Plan: added bolt/test/X86/three-way-split-jt.s

Reviewers: ayermolo, dcci, rafaelauler, maksfb

Reviewed By: rafaelauler, dcci

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


  Commit: c4b66bf4d065d3bbc2e2fac8512a6df8e013c704
      https://github.com/llvm/llvm-project/commit/c4b66bf4d065d3bbc2e2fac8512a6df8e013c704
  Author: Carlos Seo <carlos.seo at linaro.org>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    M compiler-rt/lib/builtins/README.txt
    M compiler-rt/lib/builtins/trampoline_setup.c
    M compiler-rt/test/builtins/Unit/trampoline_setup_test.c
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.h
    A llvm/test/CodeGen/AArch64/trampoline.ll

  Log Message:
  -----------
  [AArch64] Implement INIT/ADJUST_TRAMPOLINE (#70267)

Add support for llvm.init.trampoline and llvm.adjust.trampoline
intrinsics for AArch64.

Fixes https://github.com/llvm/llvm-project/issues/65573
Fixes https://github.com/llvm/llvm-project/issues/76927
Fixes https://github.com/llvm/llvm-project/issues/83555
Updates https://github.com/llvm/llvm-project/pull/66157


  Commit: 6c23f974d6fe43d8e5c0adbc4a4f89fbabc9d9ea
      https://github.com/llvm/llvm-project/commit/6c23f974d6fe43d8e5c0adbc4a4f89fbabc9d9ea
  Author: Mikhail R. Gadelha <mikhail at igalia.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    M libc/config/linux/riscv/entrypoints.txt

  Log Message:
  -----------
  [libc] Enable bind test for riscv (#100132)

The bind test was failing in the rv32 build bot because of how the build bot was set to run the tests: we were using shared directories between the host and qemu and the bind function was trying to create a file in this directory, thus creating it in the host machine.

The OS was returning "-1 ENXIO (No such device or address)", so we changed the rv32 buildbot to copy the binaries to qemu and dropped the shared directories feature.


  Commit: 4d19676de417fa4dbfac07fc4fe0c30c232b3e68
      https://github.com/llvm/llvm-project/commit/4d19676de417fa4dbfac07fc4fe0c30c232b3e68
  Author: Amir Ayupov <aaupov at fb.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    M bolt/lib/Profile/DataAggregator.cpp
    M bolt/lib/Profile/YAMLProfileReader.cpp
    M bolt/lib/Profile/YAMLProfileWriter.cpp
    M bolt/lib/Rewrite/PseudoProbeRewriter.cpp
    M bolt/test/X86/pseudoprobe-decoding-inline.test

  Log Message:
  -----------
  [BOLT] Add profile-use-pseudo-probes option

Move pseudo probe profile generation under --profile-use-pseudo-probes
option. Note that updating pseudo probes is independent from this flag.

Test Plan: updated pseudoprobe-decoding-inline.test

Reviewers: maksfb, rafaelauler, ayermolo, dcci, WenleiHe

Reviewed By: WenleiHe

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


  Commit: f2b6f0b5868d052ef03431405b1053be18a36d75
      https://github.com/llvm/llvm-project/commit/f2b6f0b5868d052ef03431405b1053be18a36d75
  Author: Mitch Phillips <mitchp at google.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    M compiler-rt/test/tsan/debug_alloc_stack.cpp

  Log Message:
  -----------
  Revert "[tsan] Enable test on linux (#99659)"

This reverts commit 52ebd8d0577e07be9c25b56656d1974a84c40bf7.

Missing declaration for gettid() on the buildbot
(https://lab.llvm.org/buildbot/#/builders/72/builds/1592) and unfortunately
a fix-forward attempt for unistd.h didn't work
(de8c4bef3329ce0045b8167cdb96d53b2a1509df). Reverting for now.


  Commit: 374bbc93bcb34268f175405a71806c4580495c6d
      https://github.com/llvm/llvm-project/commit/374bbc93bcb34268f175405a71806c4580495c6d
  Author: Mitch Phillips <mitchp at google.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    M compiler-rt/test/tsan/debug_alloc_stack.cpp

  Log Message:
  -----------
  Revert "[tsan] Include unistd.h to declare gettid()"

This reverts commit de8c4bef3329ce0045b8167cdb96d53b2a1509df.

Unfortunately the fix-forward didn't work. Reverting both and will have
Vitaly re-submit.


  Commit: f83950ab8dfda1da882a6ef7b508639df251621a
      https://github.com/llvm/llvm-project/commit/f83950ab8dfda1da882a6ef7b508639df251621a
  Author: Angel Zhang <angel.zhang at amd.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    M mlir/include/mlir/Conversion/Passes.td
    M mlir/include/mlir/Dialect/SPIRV/Transforms/SPIRVConversion.h
    M mlir/lib/Conversion/ConvertToSPIRV/ConvertToSPIRVPass.cpp
    M mlir/lib/Dialect/SPIRV/Transforms/SPIRVConversion.cpp
    M mlir/test/Conversion/ConvertToSPIRV/arith.mlir
    M mlir/test/Conversion/ConvertToSPIRV/combined.mlir
    M mlir/test/Conversion/ConvertToSPIRV/func-signature-vector-unroll.mlir
    M mlir/test/Conversion/ConvertToSPIRV/index.mlir
    M mlir/test/Conversion/ConvertToSPIRV/scf.mlir
    M mlir/test/Conversion/ConvertToSPIRV/simple.mlir
    M mlir/test/Conversion/ConvertToSPIRV/ub.mlir
    A mlir/test/Conversion/ConvertToSPIRV/vector-unroll.mlir
    M mlir/test/Conversion/ConvertToSPIRV/vector.mlir
    M mlir/test/lib/Conversion/ConvertToSPIRV/CMakeLists.txt
    M mlir/test/lib/Conversion/ConvertToSPIRV/TestSPIRVFuncSignatureConversion.cpp
    A mlir/test/lib/Conversion/ConvertToSPIRV/TestSPIRVVectorUnrolling.cpp
    M mlir/tools/mlir-opt/mlir-opt.cpp

  Log Message:
  -----------
  [mlir][spirv] Implement vector unrolling for `convert-to-spirv` pass (#100138)

### Description
This PR builds on #99872. It implements a minimal version of function
body vector unrolling to convert vector types into 1D and with a size
supported by SPIR-V (2, 3 or 4 depending on the original dimension). The
ops that are currently supported include those with elementwise traits
(e.g. `arith.addi`), `vector.reduction` and `vector.transpose`. This PR
also includes new LIT tests that only check for vector unrolling.

### Future Plans
- Support more ops

---------

Co-authored-by: Jakub Kuderski <kubakuderski at gmail.com>


  Commit: e7a3aeb1f86b8d45815b834e4e20b1fc7e71705d
      https://github.com/llvm/llvm-project/commit/e7a3aeb1f86b8d45815b834e4e20b1fc7e71705d
  Author: Mitch Phillips <mitchp at google.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

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

  Log Message:
  -----------
  Revert "[compiler-rt] Move `endif` to correct place (#100342)"

This reverts commit 558a8953680fd03bdd49a6708f3ea82d82328769.

This was a fix-forward for
https://github.com/llvm/llvm-project/pull/99613 that unfortunately
didn't work for the Android sanitizer buildbot. More information in that
pull request.


  Commit: 59e1c6cd63eb9287df6516f9a5ae564075e9c218
      https://github.com/llvm/llvm-project/commit/59e1c6cd63eb9287df6516f9a5ae564075e9c218
  Author: Mitch Phillips <mitchp at google.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    M compiler-rt/lib/sanitizer_common/sanitizer_linux.cpp
    R compiler-rt/test/sanitizer_common/TestCases/Linux/dump_registers_aarch64.cpp
    R compiler-rt/test/sanitizer_common/TestCases/Linux/dump_registers_arm.cpp

  Log Message:
  -----------
  Revert "[compiler-rt] Implement `DumpAllRegisters` for arm-linux and aarch64-linux (#99613)"

This reverts commit ef1c70d26b7e84a6f47c0c6a868b769935b2b008.

Unfortunately broke the sanitizer buildbot(s), and the fix-forward
didn't work. More details in
https://github.com/llvm/llvm-project/pull/99613


  Commit: 9f08ae8d2dd1ff9ec3b033d099282dee05528413
      https://github.com/llvm/llvm-project/commit/9f08ae8d2dd1ff9ec3b033d099282dee05528413
  Author: Timm Bäder <tbaeder at redhat.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

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

  Log Message:
  -----------
  [clang][Interp][NFC] Fix getting the record decl from a pointer type


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

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/var-permute-128.ll

  Log Message:
  -----------
  [DAG] combineAndnp - fold ANDNP(x,PSHUFB(y,z)) -> PSHUFB(y,OR(z,x))

Based off #96754 - if we are zeroing out whole elements, then fold into the PSHUFB mask instead (if MSB is set the element is zero).

Allows us to replace the non-commutative ANDNP with a much simpler OR node.

Move this after ANDNP shuffle combining as that can do a better job of this for constant ANDNP + PSHUFB masks.


  Commit: 1195df25f4df987d258e6b46c090ca3e72eccecb
      https://github.com/llvm/llvm-project/commit/1195df25f4df987d258e6b46c090ca3e72eccecb
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    M libc/CMakeLists.txt

  Log Message:
  -----------
  [libc] Make the libc files always available to clang for the GPU (#100396)

Summary:
The GPU build always wants these to be exported to `clang`. These will
be neccesary for setting up tests or using the `libc` from the clang
binary. This will cover the standard 'runtimes' build. If the user is
doing a direct compilation, we will just leave it as-is and assume they
know what they're doing.


  Commit: 338c35aabfbede9ba10a4f48a13e63f37d6f8c7c
      https://github.com/llvm/llvm-project/commit/338c35aabfbede9ba10a4f48a13e63f37d6f8c7c
  Author: Timm Bäder <tbaeder at redhat.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

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

  Log Message:
  -----------
  [clang][Interp] Fix calling variadic call operators


  Commit: 8d8fa01a66d5051356b698ef0264a01f6aade185
      https://github.com/llvm/llvm-project/commit/8d8fa01a66d5051356b698ef0264a01f6aade185
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    M libc/cmake/modules/LLVMLibCLibraryRules.cmake
    M libc/docs/gpu/building.rst
    M libc/docs/gpu/using.rst
    M libc/lib/CMakeLists.txt
    M offload/test/libc/assert.c
    M offload/test/lit.cfg

  Log Message:
  -----------
  Reapply "[libc] Remove 'packaged' GPU build support (#100208)"

This reverts commit 550b83d658755664a7f0f93b36242e885743a91b.


  Commit: 7d787df5b932b73aae6532d1e981152f103f9244
      https://github.com/llvm/llvm-project/commit/7d787df5b932b73aae6532d1e981152f103f9244
  Author: cor3ntin <corentinjabot at gmail.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    M clang/include/clang/Sema/Overload.h
    M clang/lib/Sema/SemaOverload.cpp

  Log Message:
  -----------
  [Clang][NFC] Simplify initialization of `OverloadCandidate` objects. (#100318)

Initialize some fields of OverloadCandidate in its constructor. The goal
here is try to fix read of uninitialized variable (which I was not able
to reproduce)
https://github.com/llvm/llvm-project/pull/93430#issuecomment-2187544278

We should certainly try to improve the construction of
`OverloadCandidate` further as it can be quite britle.


  Commit: 8a77961280536b680c404a49002a00b988ca45fc
      https://github.com/llvm/llvm-project/commit/8a77961280536b680c404a49002a00b988ca45fc
  Author: Kiran Chandramohan <kiran.chandramohan at arm.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    M clang/include/clang/Driver/Options.td
    A flang/test/Driver/Inputs/config-1.cfg
    A flang/test/Driver/Inputs/config-2.cfg
    A flang/test/Driver/Inputs/config-2a.cfg
    A flang/test/Driver/Inputs/config-6.cfg
    A flang/test/Driver/Inputs/config/config-4.cfg
    A flang/test/Driver/Inputs/config2/config-4.cfg
    A flang/test/Driver/config-file.f90

  Log Message:
  -----------
  [Flang][Driver] Enable config file options (#100343)

Config files provide a facility to invoke the compiler with a predefined
set of options. The patch only enables these options in the flang
driver. Functionality was always there.


  Commit: dd82a84e0eeafb017c7220c4a9fbd0a8a407f8a9
      https://github.com/llvm/llvm-project/commit/dd82a84e0eeafb017c7220c4a9fbd0a8a407f8a9
  Author: cor3ntin <corentinjabot at gmail.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    M clang/lib/Sema/SemaExpr.cpp
    M clang/test/SemaCXX/cxx2b-deducing-this.cpp

  Log Message:
  -----------
  [Clang] Fix an assertion failure introduced by #93430 (#100313)

The PR #93430 introduced an assertion that did not make any sense. and
caused a regression. The fix is to simply remove the assertion.

No changelog. the intent is to backport this fix to clang 19.


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

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

  Log Message:
  -----------
  LV/Legality: fix style after cursory reading (NFC) (#100363)


  Commit: 4e28d30e335e6e075f4624ae8d5782fef6d3f1ed
      https://github.com/llvm/llvm-project/commit/4e28d30e335e6e075f4624ae8d5782fef6d3f1ed
  Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    M llvm/include/llvm/Transforms/Vectorize/LoopVectorizationLegality.h

  Log Message:
  -----------
  LV/Legality: update outdated comment for isInvariant (NFC) (#100366)


  Commit: 0c03b4ce1081383b7649ac0f5ba3cbaffaf5bf28
      https://github.com/llvm/llvm-project/commit/0c03b4ce1081383b7649ac0f5ba3cbaffaf5bf28
  Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/test/Transforms/InstCombine/abs-intrinsic.ll
    M llvm/test/Transforms/InstCombine/sub.ll

  Log Message:
  -----------
  [InstCombine] Infer sub nuw from dominating conditions (#100164)

Alive2: https://alive2.llvm.org/ce/z/g3xxnM


  Commit: 5bae81ba9e6db16fac3cc0ee96b134f3f588c8f4
      https://github.com/llvm/llvm-project/commit/5bae81ba9e6db16fac3cc0ee96b134f3f588c8f4
  Author: Krzysztof Pszeniczny <kpszeniczny at google.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    M llvm/lib/CodeGen/MachineBlockPlacement.cpp
    M llvm/test/CodeGen/X86/code_placement_ext_tsp_large.ll

  Log Message:
  -----------
  [CodeGen] Add an option to skip extTSP BB placement for huge functions. (#99310)

The extTSP-based basic block layout algorithm improves the performance
of the generated code, but unfortunately it has a super-linear time
complexity. This leads to extremely long compilation times for certain
relatively rare kinds of autogenerated code.

This patch adds an `-mllvm` flag to optionally restrict extTSP only to
functions smaller than a specified threshold. While commit
bcdc0477319a26fd8dcdde5ace3bdd6743599f44 added a knob to to limit the
maximum chain size, it's still possible that for certain huge functions
the number of chains is very large, leading to a quadratic behaviour in
ExtTSPImpl::mergeChainPairs.


  Commit: c5abcb0521dd81bfd8b736c5d03177cc3a2d0fe3
      https://github.com/llvm/llvm-project/commit/c5abcb0521dd81bfd8b736c5d03177cc3a2d0fe3
  Author: Evgenii Kudriashov <evgenii.kudriashov at intel.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    M llvm/lib/Target/X86/GISel/X86LegalizerInfo.cpp
    R llvm/test/CodeGen/X86/GlobalISel/phi.ll
    A llvm/test/CodeGen/X86/isel-phi.ll

  Log Message:
  -----------
  [X86][GlobalISel] Reorganize tests for G_PHI and support fp80 (#100047)

* Verified scalar support of G_PHI
* Added cases with i1, ptr and x86_fp80 types
* Added phi inputs variability

We don't enable tests for i686 due to lack of float/integer types in
legalizer. We don't distinguish between illegal 64 bit integer G_LOAD
and legal double load using X87. It leads to artificial G_MERGE_VALUES
of floats into a single double.


  Commit: 2754c083cba1798b335947ad5e4f0d654b013904
      https://github.com/llvm/llvm-project/commit/2754c083cba1798b335947ad5e4f0d654b013904
  Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

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

  Log Message:
  -----------
  LAA: mark LoopInfo pointer const (NFC) (#100373)


  Commit: 8c20d715c0989eb3a9e253a53ce9d25ad6e5ee10
      https://github.com/llvm/llvm-project/commit/8c20d715c0989eb3a9e253a53ce9d25ad6e5ee10
  Author: Dmitry Chernenkov <dmitryc at google.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

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

  Log Message:
  -----------
  [Bazel][mlir] Fix Bazel for f83950ab8dfda1da882a6ef7b508639df251621a


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

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

  Log Message:
  -----------
  [LinkerWrapper] Fix `-Xoffload-linker a=b` in offloading (#100270)

Summary:
We have the `-Xoffload-linker=triple=arg` syntax that split the argument
meant only for a single toolchain. However this borke if it was an `a=b`
type argument. Make it only treat it like a triple if it's a valid
triple.


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

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/combine-pmadd.ll

  Log Message:
  -----------
  [X86] canCreateUndefOrPoisonForTargetNode - PMADDWD/PMADDUBSW intrinsics don't create poison

Fix regression introduced by #84924


  Commit: 073c199ae79f4bf9a89fcbf103cbdd6333c8512b
      https://github.com/llvm/llvm-project/commit/073c199ae79f4bf9a89fcbf103cbdd6333c8512b
  Author: Krystian Stasiowski <sdkrystian at gmail.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/AST/Type.h
    M clang/test/SemaCXX/decltype.cpp
    A clang/test/SemaCXX/typeof.cpp
    R clang/test/SemaCXX/typeof_unqual.cpp

  Log Message:
  -----------
  [Clang][AST] Don't use canonical type when checking dependence in Type::isOverloadable (#98563)

Fixes #97646.


  Commit: 046a17717d9c5b5385ecd914621b48bdd91524d0
      https://github.com/llvm/llvm-project/commit/046a17717d9c5b5385ecd914621b48bdd91524d0
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    M libcxx/CMakeLists.txt
    M libcxx/docs/BuildingLibcxx.rst

  Log Message:
  -----------
  [libc++] Improve behavior when using relative path for LIBCXX_ASSERTION_HANDLER_FILE (#100157)

Fixes #80696


  Commit: 5898a7f4954e13cabc694a44e293d9040a09b9f4
      https://github.com/llvm/llvm-project/commit/5898a7f4954e13cabc694a44e293d9040a09b9f4
  Author: Angel Zhang <angel.zhang at amd.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    M mlir/lib/Conversion/ConvertToSPIRV/CMakeLists.txt
    M mlir/lib/Dialect/SPIRV/Transforms/CMakeLists.txt

  Log Message:
  -----------
  [mlir][spirv] Update dependencies for #100138 (#100397)

This PR updates CMake and Bazel dependencies for #100138.


  Commit: 5a53add85a6d5be2d15eea32a3d06fec35e2c699
      https://github.com/llvm/llvm-project/commit/5a53add85a6d5be2d15eea32a3d06fec35e2c699
  Author: Finlay <finlay.marno at codeplay.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    M mlir/lib/Conversion/GPUToLLVMSPV/GPUToLLVMSPV.cpp
    M mlir/test/Conversion/GPUToLLVMSPV/gpu-to-llvm-spv.mlir

  Log Message:
  -----------
  [mlir] Add optimization attrs for gpu-to-llvmspv function declarations and calls (#99301)

Adds the attributes nounwind and willreturn to all function
declarations. Adds `memory(none)` equivalent to the id/dimension
function declarations. The function declaration attributes are copied to
the function calls.
`nounwind` is legal because there are no exception in SPIR-V. I also do
not see any reason why any of these functions would not return when used
correctly.
I'm confident that the get id/dim functions will have no externally
observable memory effects, but think the convergent functions will have
effects.


  Commit: 7102592af740ed9f8b388c12dd2182039a58167d
      https://github.com/llvm/llvm-project/commit/7102592af740ed9f8b388c12dd2182039a58167d
  Author: Johannes Doerfert <johannes at jdoerfert.de>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    M offload/cmake/OpenMPTesting.cmake
    M offload/include/PluginManager.h
    M offload/src/PluginManager.cpp
    M offload/src/interface.cpp
    M offload/test/lit.cfg
    M offload/test/lit.site.cfg.in
    A offload/test/tools/llvm-omp-device-info.c
    M offload/tools/deviceinfo/CMakeLists.txt
    A offload/tools/deviceinfo/llvm-offload-device-info.cpp
    R offload/tools/deviceinfo/llvm-omp-device-info.cpp

  Log Message:
  -----------
  [Offload] Repair and rename `llvm-omp-device-info` (to `-offload-`) (#100309)

The `llvm-omp-device-info` tool is very handy, but broke due to the lazy
evaluation of devices. This repairs the functionality and adds a test.
The tool is also renamed into `llvm-offload-device-info` as `-omp-` is
going away.


  Commit: 83fb0643f7148499eb6ed19155ab69bfd8096ed7
      https://github.com/llvm/llvm-project/commit/83fb0643f7148499eb6ed19155ab69bfd8096ed7
  Author: memory-thrasher <39869500+memory-thrasher at users.noreply.github.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    M clang/lib/AST/MicrosoftMangle.cpp
    A clang/test/CodeGen/ms_mangler_templatearg_opte.cpp
    M clang/test/CodeGenCXX/aarch64-mangle-sve-vectors-msvc.cpp

  Log Message:
  -----------
  Adds a pseudonym to clang's windows mangler... (#97792)

…to handle template argument values that are pointers one-past-the-end
of a non-array symbol. Also improves error messages in other template
argument scenarios where clang bails.

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

I don't think I hooked up the unit test right. I'm not sure one is
really needed for what boils down to a tweaked if statement. Please
advise.


  Commit: 0c274d527ae36db420c4273f83fcb6c859b28f1b
      https://github.com/llvm/llvm-project/commit/0c274d527ae36db420c4273f83fcb6c859b28f1b
  Author: Philip Reames <preames at rivosinc.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    M llvm/test/Analysis/CostModel/RISCV/rvv-load-store.ll

  Log Message:
  -----------
  [RISCV][TTI] Add coverage of odd sized vector loads and stores


  Commit: cdc193459d90fad83d2eafaccfe03368a9a8a160
      https://github.com/llvm/llvm-project/commit/cdc193459d90fad83d2eafaccfe03368a9a8a160
  Author: Aaron Ballman <aaron at aaronballman.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    M llvm/docs/GitHub.rst

  Log Message:
  -----------
  Update the backporting docs (#100401)

The documentation implies the special commands only work with issues,
but they also work directly from a pull request.


  Commit: 8fd9624cf729dd722a170a9dfd8f725966515231
      https://github.com/llvm/llvm-project/commit/8fd9624cf729dd722a170a9dfd8f725966515231
  Author: Philip Reames <preames at rivosinc.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    M llvm/test/Analysis/CostModel/RISCV/rvv-load-store.ll

  Log Message:
  -----------
  [RISCV][CostModel] Test default lowering strategy for vector LD/ST

Remove two options from the test command line:

* -riscv-v-vector-bits-min=128 -- This has no effect as v implied zvl128b,
  which provides the same minimum.
* -riscv-v-fixed-length-vector-lmul-max=1 -- This one forced the backend
  to split as if LMUL>m1 were illegal.  This diverges significantly from
  default behavior (where all LMUL are legal).  Note that we do still
  have splitting test coverage after this change.  Look at e.g. 32 x i64.


  Commit: bb0300cf7ce54bfbb1607348c89cb0525e12076b
      https://github.com/llvm/llvm-project/commit/bb0300cf7ce54bfbb1607348c89cb0525e12076b
  Author: Timm Bäder <tbaeder at redhat.com>
  Date:   2024-07-24 (Wed, 24 Jul 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] Fix initializing array subobjects with This pointers

We need to select the right array element once we see the CXXThisExpr.


  Commit: ea222be0d9266d9d5c100496f8c9606f213454ee
      https://github.com/llvm/llvm-project/commit/ea222be0d9266d9d5c100496f8c9606f213454ee
  Author: Sam Elliott <quic_aelliott at quicinc.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    M lld/test/COFF/lto-cpu-string.ll
    M lld/test/ELF/lto/cpu-string.ll
    M lld/test/ELF/lto/mllvm.ll
    M lld/test/MachO/lto-cpu-string.ll
    M llvm/docs/ReleaseNotes.rst
    M llvm/lib/MC/MCParser/AsmParser.cpp
    A llvm/test/MC/AArch64/align-fill-byte-zero.s
    A llvm/test/MC/ARM/align-fill-byte-zero.s
    M llvm/test/MC/AsmParser/directive_align.s
    M llvm/test/MC/COFF/align-nops.s
    M llvm/test/MC/ELF/align-nops.s
    M llvm/test/MC/MachO/x86_32-optimal_nop.s
    A llvm/test/MC/RISCV/align-fill-byte-zero.s
    M llvm/test/MC/X86/code16gcc-align.s

  Log Message:
  -----------
  [MC] Honour alignment directive fill value for non-intel (#100136)

As reported in https://llvm.org/PR30955, `.balign` with a fill-value of 0 did
not actually align using zeroes, on non-x86 targets.

This is because the check of whether to use the code alignment routines
or whether to just use the fill value was checking whether the fill
value was equal to `TextAlignFillValue`, which has not been changed from
its default of 0 on most targets (it has been changed for x86). However,
most targets do not set the fill value because it doesn't entirely make
sense -- i.e. on AArch64 there's no reasonable byte value to use for
alignment, as instructions are word-sized and have to be well-aligned.

I think the check at the end `AsmParser::parseDirectiveAlign` is
suspicious even on x86 - if you use `.balign <align>, 0x90` in a code
section, you don't end up with a block of `0x90` repeated, you end up
with a block of NOPs of various widths. This functionality is never
tested.

The fix here is to modify the check to ignore the default text align
fill value when choosing to do code alignment or not.

Fixes #30303


  Commit: 97839a8862bde89f07060ff0aa4993a868a501cd
      https://github.com/llvm/llvm-project/commit/97839a8862bde89f07060ff0aa4993a868a501cd
  Author: Andy Kaylor <andrew.kaylor at intel.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/test/Driver/fp-contract.c
    M clang/test/Driver/fp-model.c

  Log Message:
  -----------
  [Driver] Clean up fp-contract handling in clang driver (#99723)

This change refactors the fp-contract handling in
RenderFloatingPointOptions in the clang driver code and fixes some
inconsistencies in the way warnings are reported for changes in the
fp-contract behavior.


  Commit: 2e57e6366677390110f5382894c8afeba8da7419
      https://github.com/llvm/llvm-project/commit/2e57e6366677390110f5382894c8afeba8da7419
  Author: Jonathan Peyton <jonathan.l.peyton at intel.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    M openmp/runtime/src/kmp_tasking.cpp
    A openmp/runtime/test/tasking/issue-94260-1.cpp
    A openmp/runtime/test/tasking/issue-94260-2.c

  Log Message:
  -----------
  [OpenMP][libomp] Fix tasking debug assert (#95823)

The debug assert is meant to check that the index is a valid which means
the runtime needs to check against the size of the array instead of the
number of threads. A free()-ed thread put back in the thread pool may
index into anywhere inside the task team's available array from 0 to
tt_max_threads potentially.

Fixes: #94260


  Commit: c628dbd030ff084fe5e06315ddf09a47182e9716
      https://github.com/llvm/llvm-project/commit/c628dbd030ff084fe5e06315ddf09a47182e9716
  Author: smanna12 <soumi.manna at intel.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

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

  Log Message:
  -----------
  [Clang] Prevent null pointer dereference in designated initializer check (#97220)

This patch adds an assertion in clang::SemaObjC::BuildInstanceMessage()
to ensure getCurMethodDecl() returns a valid method declaration,
addressing a static analyzer finding.


  Commit: 8d3252a8987818171878a26e4298b4b5dbf2a7e9
      https://github.com/llvm/llvm-project/commit/8d3252a8987818171878a26e4298b4b5dbf2a7e9
  Author: Mark de Wever <koraq at xs4all.nl>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    M libcxx/docs/Status/Cxx20Issues.csv
    M libcxx/docs/Status/SpaceshipProjects.csv
    M libcxx/include/__bit_reference
    M libcxx/include/__iterator/bounded_iter.h
    M libcxx/include/__iterator/wrap_iter.h
    M libcxx/include/deque
    M libcxx/test/libcxx/iterators/bounded_iter/comparison.pass.cpp
    M libcxx/test/std/containers/sequences/array/iterators.pass.cpp
    M libcxx/test/std/containers/sequences/deque/iterators.pass.cpp
    M libcxx/test/std/containers/sequences/vector.bool/iterators.pass.cpp
    M libcxx/test/std/containers/sequences/vector/iterators.pass.cpp
    A libcxx/test/std/containers/views/views.span/span.iterators/iterator.pass.cpp
    A libcxx/test/std/strings/string.view/string.view.iterators/iterators.pass.cpp
    M libcxx/test/support/test_iterators.h

  Log Message:
  -----------
  [libc++][spaceship] Implements X::iterator container requirements. (#99343)

This implements the requirements for the container iterator requirements
for array, deque, vector, and `vector<bool>`.

Implements:
- LWG3352 strong_equality isn't a thing

Implements parts of:
- P1614R2 The Mothership has Landed

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


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

  Changed paths:
    M clang/lib/Basic/Targets/NVPTX.h

  Log Message:
  -----------
  [NVPTX] Restore old va_list builtin type (#100438)

Summary:
This was changed to `void *` from `char *` unintentionally, put it back.


  Commit: 3902710a447cd0dc39cc61f001fb023a502db499
      https://github.com/llvm/llvm-project/commit/3902710a447cd0dc39cc61f001fb023a502db499
  Author: gonzalobg <65027571+gonzalobg at users.noreply.github.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    M llvm/lib/Target/NVPTX/NVPTXInstrInfo.td
    A llvm/test/CodeGen/NVPTX/fence.ll

  Log Message:
  -----------
  [NVPTX] Support fence instruction (#99649)


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

  Changed paths:
    M llvm/include/llvm/MC/MCMachObjectWriter.h
    M llvm/lib/MC/MCAsmBackend.cpp
    M llvm/lib/MC/MachObjectWriter.cpp

  Log Message:
  -----------
  MC: Inline createMachObjectWriter into MCAsmBackend

We could do the same to COFF once WinCOFFObjectWriter is cleaned up
(#100303).


  Commit: f719a339a89bd64900217dd06075e618ed587be9
      https://github.com/llvm/llvm-project/commit/f719a339a89bd64900217dd06075e618ed587be9
  Author: David Blaikie <dblaikie at gmail.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    M llvm/lib/ExecutionEngine/Orc/Core.cpp

  Log Message:
  -----------
  Mark assert-used-only variable as [[maybe_unused]]

Seemed nicer than inlining, given the complexities of flag checking and
the multiple uses.


  Commit: 0891ccc0c68c35e17562c752955788f08054bcdb
      https://github.com/llvm/llvm-project/commit/0891ccc0c68c35e17562c752955788f08054bcdb
  Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    M llvm/include/llvm/Frontend/OpenMP/ConstructDecompositionT.h

  Log Message:
  -----------
  [Frontend][OpenMP] Apply ompx_attribute to all allowing leaf constructs (#100370)

By default, in a compound directive, a clause will apply to the unique
leaf construct that allows it. Clauses that could apply to multiple leaf
constructs follow different rules.

For ompx_attribute, apply it to all leaf constructs that allow it.


  Commit: 0760aec54ca6f680f4786c4fc3bbae8f500deeab
      https://github.com/llvm/llvm-project/commit/0760aec54ca6f680f4786c4fc3bbae8f500deeab
  Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

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

  Log Message:
  -----------
  MTM: fix issues after cursory reading (#100404)


  Commit: 3db78fa1dd639ba5db761023e04f97418cfcd00e
      https://github.com/llvm/llvm-project/commit/3db78fa1dd639ba5db761023e04f97418cfcd00e
  Author: gonzalobg <65027571+gonzalobg at users.noreply.github.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    M llvm/lib/Target/NVPTX/MCTargetDesc/NVPTXInstPrinter.cpp
    M llvm/lib/Target/NVPTX/NVPTX.h
    M llvm/lib/Target/NVPTX/NVPTXISelDAGToDAG.cpp
    M llvm/lib/Target/NVPTX/NVPTXInstrInfo.td
    M llvm/lib/Target/NVPTX/NVPTXSubtarget.h
    A llvm/test/CodeGen/NVPTX/load-store-sm-70.ll
    M llvm/test/CodeGen/NVPTX/load-store.ll

  Log Message:
  -----------
  [NVPTX] Add Volta Load/Store Atomics (.relaxed, .acquire, .release) and Volatile (.mmio/.volatile) support  (#99709)

Followup to https://github.com/llvm/llvm-project/pull/98022 which broke
support for LLVM `unordered` atomic ordering.

This PR lowers `atomic unordered` to PTX volatile operations to preserve
atomicity, and adds a bunch of tests for this ordering to the NVPTX
backend (we had none).


  Commit: 0dbd72d6abfd390fc62eab43e195c21feb5e9bd0
      https://github.com/llvm/llvm-project/commit/0dbd72d6abfd390fc62eab43e195c21feb5e9bd0
  Author: Brendan Dahl <brendan.dahl at gmail.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    M clang/include/clang/Basic/BuiltinsWebAssembly.def
    M clang/lib/CodeGen/CGBuiltin.cpp
    M clang/test/CodeGen/builtins-wasm.c
    M llvm/include/llvm/IR/IntrinsicsWebAssembly.td
    M llvm/lib/Target/WebAssembly/WebAssemblyInstrSIMD.td
    M llvm/test/CodeGen/WebAssembly/half-precision.ll
    M llvm/test/MC/WebAssembly/simd-encodings.s

  Log Message:
  -----------
  [WebAssembly] Implement f16x8.replace_lane instruction. (#99388)

Use a builtin and intrinsic until half types are better supported for
instruction selection.


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

  Changed paths:
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vfwmacc.ll

  Log Message:
  -----------
  [RISCV] Add test cases for failures to form widening FMA instructions. NFC

If the fp_extend is in the scalar domain before the shuffle, we
won't recognize the widening opportunity.


  Commit: 59e07f34bdbd463254b0b2744bd0a587d2cd6438
      https://github.com/llvm/llvm-project/commit/59e07f34bdbd463254b0b2744bd0a587d2cd6438
  Author: Gang Chen <gangc at amd.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

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

  Log Message:
  -----------
  [AMDGPU][GlobaISel] wrap the load-splitting code in RegBank selection with condition (#98966)

The load-splitting code in RegBank selection is only relevant to those
listed address-spaces because there are cases in those address-spaces in
which we are not sure how far to split during legalization

---------

Signed-off-by: gangc <gangc at amd.com>


  Commit: 2e3ee31d2901bd1faeb57703992358130d5f2dcc
      https://github.com/llvm/llvm-project/commit/2e3ee31d2901bd1faeb57703992358130d5f2dcc
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    M libc/config/gpu/entrypoints.txt
    M libc/docs/gpu/support.rst
    M libc/test/src/stdio/CMakeLists.txt
    M libc/test/src/stdio/sscanf_test.cpp

  Log Message:
  -----------
  [libc] Enable 'sscanf' on the GPU #100211

Summary:
We can enable the sscanf function on the GPU now. This required adding
the configs to the scanf list so that the GPU build didn't do float
conversions.


  Commit: 8c7188aa4c1468971d18e9dff8f2b85aa7e9bfd9
      https://github.com/llvm/llvm-project/commit/8c7188aa4c1468971d18e9dff8f2b85aa7e9bfd9
  Author: Kevin McAfee <kmcafee at nvidia.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    M llvm/include/llvm/IR/IntrinsicsNVVM.td
    A llvm/test/Transforms/DCE/nvvm-ldu-ldg-willreturn.ll

  Log Message:
  -----------
  Update NVVM ldu/ldg intrinsics with IntrWillReturn and test for DCE (#98968)

Dead calls to these intrinsics were not being deleted at the IR level as
they were not marked `IntrWillReturn`, though they were being deleted
when building the SDAG. This fixes that and adds a test to confirm they
are deleted during `opt`


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

  Changed paths:
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vfw-web-simplification.ll

  Log Message:
  -----------
  [RISCV] Add missing CHECK prefix to fixed-vectors-vfw-web-simplification.ll. NFC

The FOLDING prefix was ambiguous on one of the test cases. It would be
nice if the update script reported this.


  Commit: 0ee32c45730c94be1b7d5fa60a0e8dff5751d014
      https://github.com/llvm/llvm-project/commit/0ee32c45730c94be1b7d5fa60a0e8dff5751d014
  Author: Sumanth Gundapaneni <sumanth.gundapaneni at amd.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    M llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
    M llvm/lib/CodeGen/TargetLoweringBase.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp
    M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
    A llvm/test/CodeGen/AMDGPU/lrint.ll

  Log Message:
  -----------
  [AMDGPU] Implement llvm.lrint intrinsic lowering (#98931)

This patch enabled the target-independent lowering of llvm.lrint via
GlobalISel.
For SelectionDAG, the instrinsic is custom lowered for AMDGPU.


  Commit: 20eff684203287828d6722fc860b9d3621429542
      https://github.com/llvm/llvm-project/commit/20eff684203287828d6722fc860b9d3621429542
  Author: Eli Friedman <efriedma at quicinc.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/AST/ExprConstant.cpp
    M clang/lib/AST/Interp/Interp.h
    M clang/lib/Sema/SemaExpr.cpp
    M clang/test/CXX/basic/basic.types/p10.cpp
    M clang/test/Sema/constant-builtins-2.c
    M clang/test/SemaCXX/class.cpp
    M clang/test/SemaCXX/enum.cpp

  Log Message:
  -----------
  [ExprConstant] Handle shift overflow the same way as other kinds of overflow (#99579)

We have a mechanism to allow folding expressions that aren't ICEs as an
extension; use it more consistently.

This ends up causing bad effects on diagnostics in a few cases, but
that's not specific to shifts; it's a general issue with the way those
uses handle overflow diagnostics.


  Commit: b1f263e4c2466a693609a3930f53b9887be67b5b
      https://github.com/llvm/llvm-project/commit/b1f263e4c2466a693609a3930f53b9887be67b5b
  Author: Jon Roelofs <jonathan_roelofs at apple.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

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

  Log Message:
  -----------
  [llvm][MachineLICM] Fix a comment typo. NFC


  Commit: bfcfb0fd2dea5e06f74e49ff8b4e1dc10c9acf6a
      https://github.com/llvm/llvm-project/commit/bfcfb0fd2dea5e06f74e49ff8b4e1dc10c9acf6a
  Author: Thorsten Schütt <schuett at gmail.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/GlobalISel/CombinerHelper.h
    M llvm/include/llvm/CodeGen/GlobalISel/GenericMachineInstrs.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/arm64-atomic.ll
    M llvm/test/CodeGen/AArch64/GlobalISel/arm64-pcsections.ll
    M llvm/test/CodeGen/AArch64/GlobalISel/combine-trunc.mir

  Log Message:
  -----------
  [GlobalIsel] Modernize truncate of ext. (#100338)

Credits:
https://github.com/llvm/llvm-project/pull/90964
https://reviews.llvm.org/D87050

combine-trunc.mir

Functional changes intended.


  Commit: 10ff2bcb5eaf169b0d9f6f12851ccae339a54aaf
      https://github.com/llvm/llvm-project/commit/10ff2bcb5eaf169b0d9f6f12851ccae339a54aaf
  Author: Narayan <32898329+vortex73 at users.noreply.github.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

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

  Log Message:
  -----------
  [Clang] Refactor uses of  `Cand->Function` in SemaOverload.cpp (#98965)

- [ ] adds checks to called functions containing `Cand->Function` as an
argument.
- [ ] Assigned `Cand->Function` as a `FunctionDecl*` to enhance
readablity.
Solves: #98769 and #98942


  Commit: 0431d6dab40b05d9f4a312a9c170c81a889bfb49
      https://github.com/llvm/llvm-project/commit/0431d6dab40b05d9f4a312a9c170c81a889bfb49
  Author: James Y Knight <jyknight at google.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Basic/BuiltinsX86.def
    M clang/lib/CodeGen/CGBuiltin.cpp
    M clang/lib/Headers/emmintrin.h
    M clang/lib/Headers/mmintrin.h
    M clang/lib/Headers/tmmintrin.h
    M clang/lib/Headers/xmmintrin.h
    M clang/lib/Sema/SemaX86.cpp
    M clang/test/CodeGen/X86/mmx-builtins.c
    M clang/test/CodeGen/X86/mmx-inline-asm.c
    M clang/test/CodeGen/X86/mmx-shift-with-immediate.c
    M clang/test/CodeGen/attr-target-x86-mmx.c
    M clang/test/CodeGen/builtins-x86.c
    M clang/test/CodeGen/palignr.c
    R clang/test/CodeGen/pr26099.c
    M clang/test/Headers/xmmintrin.c
    M clang/test/Sema/x86-builtin-palignr.c
    M clang/www/builtins.py
    M llvm/include/llvm/IR/IntrinsicsX86.td

  Log Message:
  -----------
  Clang: convert `__m64` intrinsics to unconditionally use SSE2 instead of MMX. (#96540)

The MMX instruction set is legacy, and the SSE2 variants are in every
way superior, when they are available -- and they have been available
since the Pentium 4 was released, 20 years ago.

Therefore, we are switching the "MMX" intrinsics to depend on SSE2,
unconditionally. This change entirely drops the ability to generate
vectorized code using compiler intrinsics for chips with MMX but without
SSE2: the Intel Pentium MMX, Pentium, II, and Pentium III (released
1997-1999), as well as AMD K6 and K7 series chips of around the same
timeframe. Targeting these older CPUs remains supported -- simply
without the ability to use MMX compiler intrinsics.

Migrating away from the use of MMX registers also fixes a rather
non-obvious requirement. The long-standing programming model for these
MMX intrinsics requires that the programmer be aware of the x87/MMX
mode-switching semantics, and manually call `_mm_empty()` between using
any MMX instruction and any x87 FPU instruction. If you neglect to, then
every future x87 operation will return a NaN result. This requirement is
not at all obvious to users of these these intrinsic functions, and
causes very difficult to detect bugs.

Worse, even if the user did write code that correctly calls
`_mm_empty()` in the right places, LLVM may sometimes reorder x87 and
mmx operations around each-other, unaware of this mode switching issue.

Eliminating the use of MMX registers eliminates this problem.

This change also deletes the now-unnecessary MMX `__builtin_ia32_*`
functions from Clang. Only 3 MMX-related builtins remain in use --
`__builtin_ia32_emms`, used by `_mm_empty`, and
`__builtin_ia32_vec_{ext,set}_v4si`, used by `_mm_insert_pi16` and
`_mm_extract_pi16`. Note particularly that the latter two lower to
generic, non-MMX, IR. Support for the LLVM intrinsics underlying these
removed builtins still remains, for the moment.

The file `clang/www/builtins.py` has been updated with mappings from the
newly-removed `__builtin_ia32` functions to the still-supported
equivalents in `mmintrin.h`.

(Originally uploaded at https://reviews.llvm.org/D86855 and
https://reviews.llvm.org/D94252)

Fixes issue #41665
Works towards #98272


  Commit: c6e69b041a7e6d18463f6cf684b10fd46a62c496
      https://github.com/llvm/llvm-project/commit/c6e69b041a7e6d18463f6cf684b10fd46a62c496
  Author: Carlos Seo <carlos.seo at linaro.org>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    M flang/docs/InternalProcedureTrampolines.md

  Log Message:
  -----------
  [Flang][Docs] Update information about AArch64 trampolines (#100391)

Commits c4b66bf and 7647174 add support for AArch64 trampolines. Updated
documentation to reflect the changes.


  Commit: 70c6e79e6d3e897418f3556a25e22e66ff018dc4
      https://github.com/llvm/llvm-project/commit/70c6e79e6d3e897418f3556a25e22e66ff018dc4
  Author: Daniil Kovalev <dkovalev at accesssoftek.com>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/test/CodeGen/ptrauth-function-attributes.c
    M clang/test/CodeGen/ubsan-function.cpp
    M clang/test/CodeGenCXX/ptrauth-global-constant-initializers.cpp
    M clang/test/CodeGenCXX/ptrauth-member-function-pointer.cpp
    M clang/test/CodeGenCXX/ptrauth-type-info-vtable.cpp
    M clang/test/Driver/aarch64-ptrauth.c
    M clang/test/Preprocessor/ptrauth_feature.c
    M clang/test/Sema/ptrauth-indirect-goto.c

  Log Message:
  -----------
  [PAC][clang][test] Implement missing tests for some PAuth features (#100206)

Implement tests for the following PAuth-related features:

- driver, preprocessor and ELF codegen tests for type_info vtable
pointer discrimination #99726;

- driver, preprocessor, and ELF codegen (emitting function attributes) +
sema (emitting errors) tests for indirect gotos signing #97647;

- ELF codegen tests for ubsan type checks + auth #99590;

- ELF codegen tests for constant global init with polymorphic MI #99741;

- ELF codegen tests for C++ member function pointers auth #99576.


  Commit: 74e14605d73e6286651d4b47ba5e04858cec7ebd
      https://github.com/llvm/llvm-project/commit/74e14605d73e6286651d4b47ba5e04858cec7ebd
  Author: David Blaikie <dblaikie at gmail.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    M lld/test/MachO/objc-category-merging-erase-objc-name-test.s

  Log Message:
  -----------
  Fix test to write to %T instead of the current working directory (which may not be writeable)


  Commit: 8b094c9df34f3190b66d11d19379be1f4c89beec
      https://github.com/llvm/llvm-project/commit/8b094c9df34f3190b66d11d19379be1f4c89beec
  Author: aaryanshukla <53713108+aaryanshukla at users.noreply.github.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    M libc/docs/dev/header_generation.rst

  Log Message:
  -----------
  [libc][newheadergen]: PyYaml Version Update (#100463)

- a lot of builds had an issue using new headergen because they do not
have PyYaml installed.


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

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

  Log Message:
  -----------
   [lldb] Prevent passing a nullptr to std::string in ObjectFileMachO (#100421)

Prevent passing a nullptr to std::string::insert in
ObjectFileMachO::GetDependentModules. Calling GetCString on an empty
ConstString will return a nullptr, which is undefined behavior. Instead,
use the GetString helper which will return an empty string in that case.

rdar://132388027


  Commit: 58fb51492d9669525662fa269295d85537968569
      https://github.com/llvm/llvm-project/commit/58fb51492d9669525662fa269295d85537968569
  Author: Leandro Lupori <leandro.lupori at linaro.org>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    M flang/include/flang/Semantics/tools.h
    M flang/lib/Semantics/resolve-directives.cpp
    R flang/test/Semantics/OpenMP/copyprivate04.f90
    M flang/test/Semantics/OpenMP/do05-positivecase.f90
    M flang/test/Semantics/OpenMP/do20.f90
    M flang/test/Semantics/OpenMP/implicit-dsa.f90
    M flang/test/Semantics/OpenMP/reduction08.f90
    M flang/test/Semantics/OpenMP/reduction09.f90
    M flang/test/Semantics/OpenMP/symbol01.f90
    M flang/test/Semantics/OpenMP/symbol02.f90
    M flang/test/Semantics/OpenMP/symbol03.f90
    M flang/test/Semantics/OpenMP/symbol05.f90
    M flang/test/Semantics/OpenMP/symbol07.f90
    M flang/test/Semantics/OpenMP/symbol08.f90
    M flang/test/Semantics/OpenMP/symbol09.f90

  Log Message:
  -----------
  Revert "[flang][OpenMP] Fix copyprivate semantic checks" (#100478)

Reverts llvm/llvm-project#95799

This caused errors in some internal test suites.


  Commit: b79568654e38a14ef921af932ed96abd8961b1ed
      https://github.com/llvm/llvm-project/commit/b79568654e38a14ef921af932ed96abd8961b1ed
  Author: James Y Knight <jyknight at google.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst

  Log Message:
  -----------
  Clang: adjust MMX instrinsics release note.


  Commit: 3f6eb13abf643afec17a73448ede380606531226
      https://github.com/llvm/llvm-project/commit/3f6eb13abf643afec17a73448ede380606531226
  Author: Daniil Kovalev <dkovalev at accesssoftek.com>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/test/Driver/aarch64-ptrauth.c

  Log Message:
  -----------
  [PAC][clang] Enable `-fptrauth-indirect-gotos` as part of pauthtest ABI (#100480)


  Commit: 7b51777ed89969ae86a0714565d195faf394b7db
      https://github.com/llvm/llvm-project/commit/7b51777ed89969ae86a0714565d195faf394b7db
  Author: Job Henandez Lara <hj93 at protonmail.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    M libc/config/darwin/arm/entrypoints.txt
    M libc/config/darwin/x86_64/entrypoints.txt
    M libc/config/linux/aarch64/entrypoints.txt
    M libc/config/linux/arm/entrypoints.txt
    M libc/config/linux/riscv/entrypoints.txt
    M libc/config/linux/x86_64/entrypoints.txt
    M libc/docs/math/index.rst
    M libc/spec/stdc.td
    M libc/src/math/CMakeLists.txt
    M libc/src/math/generic/CMakeLists.txt
    A libc/src/math/generic/totalordermag.cpp
    A libc/src/math/generic/totalordermagf.cpp
    A libc/src/math/generic/totalordermagf128.cpp
    A libc/src/math/generic/totalordermagl.cpp
    A libc/src/math/totalordermag.h
    A libc/src/math/totalordermagf.h
    A libc/src/math/totalordermagf128.h
    A libc/src/math/totalordermagl.h
    M libc/test/src/math/smoke/CMakeLists.txt
    A libc/test/src/math/smoke/totalordermag_test.cpp
    A libc/test/src/math/smoke/totalordermagf128_test.cpp
    A libc/test/src/math/smoke/totalordermagf_test.cpp
    A libc/test/src/math/smoke/totalordermagl_test.cpp

  Log Message:
  -----------
  [libc][math][c23] add entrypoints and tests for totalordermag{f,l,f128} (#100159)

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


  Commit: 393a957d1c9303b87361dfdc3b8e504ba435ea8e
      https://github.com/llvm/llvm-project/commit/393a957d1c9303b87361dfdc3b8e504ba435ea8e
  Author: Jorge Gorbe Moya <jgorbe at google.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

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

  Log Message:
  -----------
  [bazel] Add missing dependency after 74a1ca504bf60f02431140ee72dbe1c158556237


  Commit: 0af754213507972a0d0301bc195d65414d8dc193
      https://github.com/llvm/llvm-project/commit/0af754213507972a0d0301bc195d65414d8dc193
  Author: Heejin Ahn <aheejin at gmail.com>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    M llvm/lib/Target/WebAssembly/WebAssemblyLowerEmscriptenEHSjLj.cpp
    A llvm/test/CodeGen/WebAssembly/lower-wasm-ehsjlj-phi.ll

  Log Message:
  -----------
  Reapply "[WebAssembly] Fix phi handling for Wasm SjLj (#99730)"

This reapplies #99730. #99730 contained a nondeterministic iteration
which failed the reverse-iteration bot
(https://lab.llvm.org/buildbot/#/builders/110/builds/474) and reverted
in
https://github.com/llvm/llvm-project/commit/f3f0d9928f982cfd302351f418bcc5b63cc1bb9d.

The fix is make the order of iteration of new predecessors
determintistic by using `SmallSetVector`.
```diff
--- a/llvm/lib/Target/WebAssembly/WebAssemblyLowerEmscriptenEHSjLj.cpp
+++ b/llvm/lib/Target/WebAssembly/WebAssemblyLowerEmscriptenEHSjLj.cpp
@@ -1689,7 +1689,7 @@ void WebAssemblyLowerEmscriptenEHSjLj::handleLongjmpableCallsForWasmSjLj(
     }
   }

-  SmallDenseMap<BasicBlock *, SmallPtrSet<BasicBlock *, 4>, 4>
+  SmallDenseMap<BasicBlock *, SmallSetVector<BasicBlock *, 4>, 4>
       UnwindDestToNewPreds;
   for (auto *CI : LongjmpableCalls) {
     // Even if the callee function has attribute 'nounwind', which is true for
```


  Commit: 115c89b94cb8af10c2029001a1dd28154d948a37
      https://github.com/llvm/llvm-project/commit/115c89b94cb8af10c2029001a1dd28154d948a37
  Author: Thurston Dang <thurston at google.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    M llvm/test/Instrumentation/MemorySanitizer/AArch64/neon_vst_float.ll

  Log Message:
  -----------
  [msan] Enable and update neon_vst_float test case (#100435)

This enables the neon_vst_float test case
(https://github.com/llvm/llvm-project/pull/100210). Although MSan does
not yet generate useful IR, since opt is run with -disable-verify, the
test case should still run successfully.
    
This patch also makes minor fixes to the test case:
- 'ptr %a' is renamed to 'ptr %p' because update_test_checks.py is
case-insensitive, and was unexpectedly aliasing the %A and %a in the
expected output ('<1 x double> [[A]], <1 x double> [[B]], ptr [[A]]').
- The sample output for st1x{2,3,4} was previously accidentally
generated using a prototype version of MSan rather than trunk; these
instructions are not yet instrumented.
- Changes the comment on how the test case was generated, because '; |
sed -r 's/^\/\/ CHECK:[ ]*//'' was being interpreted by FileCheck to be
a CHECK: command.


  Commit: e894df6392beea3723627329009f3e6d51d16f47
      https://github.com/llvm/llvm-project/commit/e894df6392beea3723627329009f3e6d51d16f47
  Author: Dmitry Chestnykh <dm.chestnykh at gmail.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    M compiler-rt/lib/sanitizer_common/sanitizer_linux.cpp
    A compiler-rt/test/sanitizer_common/TestCases/Linux/dump_registers_aarch64.cpp
    A compiler-rt/test/sanitizer_common/TestCases/Linux/dump_registers_arm.cpp

  Log Message:
  -----------
  [compiler-rt] Implement `DumpAllRegisters` for arm-linux and aarch64-linux (#100398)

Reland with a couple of build fixes

#100337 #100342 #99613


  Commit: 2ba1aeed2efd8156717886f89f6d4270b1df7a18
      https://github.com/llvm/llvm-project/commit/2ba1aeed2efd8156717886f89f6d4270b1df7a18
  Author: Jason Molenda <jmolenda at apple.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    M lldb/docs/resources/lldbgdbremote.md
    M lldb/source/Expression/IRMemoryMap.cpp

  Log Message:
  -----------
  [lldb] Don't use a vm addr range starting at 0 for local memory (#100288)

When an inferior stub cannot allocate memory for lldb, and lldb needs to
store the result of expressions, it will do it in lldb's own memory
range ("host memory"). But it needs to find a virtual address range that
is not used in the inferior process. It tries to use the
qMemoryRegionInfo gdb remote serial protocol packet to find a range that
is inaccessible, starting at address 0 and moving up the size of each
region.

If the first region found at address 0 is inaccessible, lldb will use
the address range starting at 0 to mean "read lldb's host memory, not
the process memory", and programs that crash with a null dereference
will have poor behavior.

This patch skips consideration of a memory region that starts at address
0.

I also clarified the documentation of qMemoryRegionInfo to make it clear
that the stub is required to provide permissions for a memory range that
is accessable, it is not an optional key in this response. This issue
was originally found by a stub that did not list permissions in its
response, and lldb treated the first region returned as the one it would
use. (the stub also didn't support the memory-allocate packet)


  Commit: ac1a1e5797388598201511d17f05aa088ef4a2e2
      https://github.com/llvm/llvm-project/commit/ac1a1e5797388598201511d17f05aa088ef4a2e2
  Author: Mingming Liu <mingmingl at google.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

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

  Log Message:
  -----------
  [ThinLTO][TypeProf] Import local-linkage global var for mod1:func_foo-> mod2:local-var edge (#100448)

VTable value profiling can create reference edges from `mod1:func_foo`
to `mod2:local-vtable`. Indirect call profiling can create reference
edges from `mod1:func_foo` to `mod2:local_func_bar`.

Given a ref chain `mod1:func_foo -> mod2:local-var`,`local-var` doesn't
get imported by default.

Compiler checks / requires the module of 'local-var' is the same as the
function that referenced it(`mod1:func_foo`). This is to prevent
mis-compilation when both `mod1` and `mod2` has `local-var` of the same
name, and cpp files are compiled without full path.

This patch allows the import when one of the following conditions
happen:
1) Introduce an option `import-assume-local-unique`. When the compiler
user can guarantee that all files are compiled with full paths, they can
set this option.
2) When there is one instance of value summary.

Test:
* A/B testing this option alone gives -0.16% statistically consistent
cpu cycle reduction on one search workload (no throughput increase)
* Testing it together with existing more-efficient ICP bumps the
throughput increase by a margin (0.05%~0.1%)
* No regressions observed.


  Commit: 8e43acbfedf53ded43ec693ddaaf518cb7416c1c
      https://github.com/llvm/llvm-project/commit/8e43acbfedf53ded43ec693ddaaf518cb7416c1c
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    M libc/cmake/modules/LLVMLibCCompileOptionRules.cmake
    M libc/cmake/modules/LLVMLibCObjectRules.cmake

  Log Message:
  -----------
  [libc] Only add '-fno-builtin-*' on the entrypoints that use them (#100481)

Summary:
The GPU build needs to be able to inline stuff in LTO. Builtin
transformations cause problems on the functions that the optimizer does
heavy libcall recognition on. Previously we moved to using
`-fno-builtin-*` to allow us to only disable the problematic ones.
However, this still didn't allow inlining because each function had the
attribute that told the inliner not to inlining a nobuiltin function
into a non-nobuiltin function

This patch fixes that by only applying these attributes to the
entrypoints that define them. That is enough to prevent recursive calls
within the definitoins themselves.


  Commit: 7e7a9069d4240d2ae619cb50eba09f948c537ce3
      https://github.com/llvm/llvm-project/commit/7e7a9069d4240d2ae619cb50eba09f948c537ce3
  Author: Owen Pan <owenpiano at gmail.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

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

  Log Message:
  -----------
  Revert "[clang-format] Fix a bug in annotating `*` in `#define`s (#99433)"

This reverts commit ce1a87437cc143889665c41046107e84cdf6246e.

Closes #100304.


  Commit: ccae7b461be339e717d02f99ac857cf0bc7d17fc
      https://github.com/llvm/llvm-project/commit/ccae7b461be339e717d02f99ac857cf0bc7d17fc
  Author: Gedare Bloom <gedare at rtems.org>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    M clang/lib/Format/ContinuationIndenter.cpp
    M clang/lib/Format/FormatToken.h
    M clang/lib/Format/TokenAnnotator.cpp
    M clang/unittests/Format/FormatTest.cpp
    M clang/unittests/Format/TokenAnnotatorTest.cpp

  Log Message:
  -----------
  [clang-format] Improve BlockIndent at ColumnLimit (#93140)

Fixes #55731

The reported formatting problems were related to ignoring deep nesting
of "simple" functions (causing #54808) and to allowing the trailing
annotation to become separated from the closing parens, which allowed a
break to occur between the closing parens and the trailing annotation.
The fix for the nesting of "simple" functions is to detect them more
carefully. "Simple" was defined in a comment as being a single
non-expression argument. I tried to stay as close to the original intent
of the implementation while fixing the various bad formatting reports.

In the process of fixing these bugs, some latent bugs were discovered
related to how JavaScript Template Strings are handled. Those are also
fixed here.

---------

Co-authored-by: Owen Pan <owenpiano at gmail.com>


  Commit: ba8883c46e3cb1782f66774a116bc0364ea68ce0
      https://github.com/llvm/llvm-project/commit/ba8883c46e3cb1782f66774a116bc0364ea68ce0
  Author: Mingming Liu <mingmingl at google.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

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

  Log Message:
  -----------
  Fix buildbot failure by fixing the base pointer type (#100508)

This should fix buildbot failures like
https://lab.llvm.org/buildbot/#/builders/169/builds/1448


  Commit: 8608cc1c89640bd3d8120f24c964af21310253b6
      https://github.com/llvm/llvm-project/commit/8608cc1c89640bd3d8120f24c964af21310253b6
  Author: Timm Bäder <tbaeder at redhat.com>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

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

  Log Message:
  -----------
  [clang][Interp] Fix array element This chains

The previous test was too minimal. If we actually do something after
initializing the nested array element, we end up causing a stack element
type mismatch.


  Commit: 25482b356e51de1f259b3ac7c785ab34977781b4
      https://github.com/llvm/llvm-project/commit/25482b356e51de1f259b3ac7c785ab34977781b4
  Author: Chen Zheng <czhengsz at cn.ibm.com>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    M clang/lib/Basic/Targets/PPC.cpp
    M clang/lib/Driver/ToolChains/Arch/PPC.cpp
    M clang/lib/Driver/ToolChains/Arch/PPC.h
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/lib/Driver/ToolChains/CommonArgs.cpp
    M clang/test/CodeGen/aix-builtin-cpu-is.c
    M clang/test/CodeGen/builtin-cpu-supports.c
    M clang/test/Misc/target-invalid-cpu-note.c
    M llvm/include/llvm/TargetParser/PPCTargetParser.def
    A llvm/include/llvm/TargetParser/PPCTargetParser.h
    M llvm/lib/TargetParser/CMakeLists.txt
    A llvm/lib/TargetParser/PPCTargetParser.cpp
    M llvm/utils/gn/secondary/llvm/lib/TargetParser/BUILD.gn

  Log Message:
  -----------
  [PowerPC] add TargetParser for PPC target (#97541)

For now only focus on the CPU type, will work on the CPU features part
later.

With the CPU handling in TargetParser, clang and llc/opt are able to
query common interfaces.

So we can set same default CPU and CPU features with same interfaces.


  Commit: fe8d1e61ac4104f48bbefc6959a084a8e16927e9
      https://github.com/llvm/llvm-project/commit/fe8d1e61ac4104f48bbefc6959a084a8e16927e9
  Author: Mariusz Sikora <mariusz.sikora at amd.com>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

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

  Log Message:
  -----------
  [AMDGPU][NFC] Use GFX940 prefix in dpp64_combine test (#100459)


  Commit: 1b7631a699e6af7f497548a1ceb5be0570c60ed0
      https://github.com/llvm/llvm-project/commit/1b7631a699e6af7f497548a1ceb5be0570c60ed0
  Author: PeterChou1 <peter.chou at mail.utoronto.ca>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    M clang-tools-extra/clang-doc/Mapper.cpp
    M clang-tools-extra/clang-doc/Mapper.h
    M clang-tools-extra/clang-doc/tool/ClangDocMain.cpp

  Log Message:
  -----------
  [clang-doc] Improve clang-doc performance through memoization (#96809)


  Commit: 26b70707fc2cc0ab8883e6492a4808401a6a4bad
      https://github.com/llvm/llvm-project/commit/26b70707fc2cc0ab8883e6492a4808401a6a4bad
  Author: Shivam Gupta <shivam98.tkg at gmail.com>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

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

  Log Message:
  -----------
  [Clang] Remove some dead code in getNumTeamsExprForTargetDirective (#95695)

This was reported in https://pvs-studio.com/en/blog/posts/cpp/1126/,
fragment N9.

V523 The 'then' statement is equivalent to the subsequent code fragment.
CGOpenMPRuntime.cpp:6040, 6036

---------

Co-authored-by: Shivam Gupta <shivma98.tkg at gmail.com>


  Commit: 2e0c2154a8dc5d8ab2a8cf360aa0184fb58c0860
      https://github.com/llvm/llvm-project/commit/2e0c2154a8dc5d8ab2a8cf360aa0184fb58c0860
  Author: Freddy Ye <freddy.ye at intel.com>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

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

  Log Message:
  -----------
  [X86][MC] Support 'ctestX <reg>, <mem>' and 'ctextX <mem>, <reg>' as synonyms. (#97985)

relate gas discussion:
https://sourceware.org/pipermail/binutils/2024-July/135349.html


  Commit: 74fcb6aafddd56df1bd6d6841b2e0f289f8e54b0
      https://github.com/llvm/llvm-project/commit/74fcb6aafddd56df1bd6d6841b2e0f289f8e54b0
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-07-24 (Wed, 24 Jul 2024)

  Changed paths:
    M llvm/lib/TargetParser/PPCTargetParser.cpp

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

This patch fixes:

  llvm/include/llvm/TargetParser/PPCTargetParser.def:109:9: error:
  suggest braces around initialization of subobject
  [-Werror,-Wmissing-braces]

  llvm/lib/TargetParser/PPCTargetParser.cpp:96:16: error: address of
  stack memory associated with local variable 'CPU' returned
  [-Werror,-Wreturn-stack-address]


  Commit: 2914a4b88837177d4a91a99525c1a3117242236d
      https://github.com/llvm/llvm-project/commit/2914a4b88837177d4a91a99525c1a3117242236d
  Author: Med Ismail Bennani <ismail at bennani.ma>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    M lldb/include/lldb/Core/PluginManager.h
    M lldb/include/lldb/Interpreter/Interfaces/ScriptedInterface.h
    A lldb/include/lldb/Interpreter/Interfaces/ScriptedInterfaceUsages.h
    M lldb/include/lldb/lldb-private-interfaces.h
    M lldb/source/Commands/CommandObjectScripting.cpp
    M lldb/source/Commands/Options.td
    M lldb/source/Core/PluginManager.cpp
    M lldb/source/Interpreter/CMakeLists.txt
    A lldb/source/Interpreter/Interfaces/CMakeLists.txt
    A lldb/source/Interpreter/Interfaces/ScriptedInterfaceUsages.cpp
    M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/CMakeLists.txt
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/OperatingSystemPythonInterface.cpp
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/OperatingSystemPythonInterface.h
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/OperatingSystemPythonInterface/CMakeLists.txt
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/OperatingSystemPythonInterface/OperatingSystemPythonInterface.cpp
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/OperatingSystemPythonInterface/OperatingSystemPythonInterface.h
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedPlatformPythonInterface.cpp
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedPlatformPythonInterface.h
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedPlatformPythonInterface/CMakeLists.txt
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedPlatformPythonInterface/ScriptedPlatformPythonInterface.cpp
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedPlatformPythonInterface/ScriptedPlatformPythonInterface.h
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedProcessPythonInterface.cpp
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedProcessPythonInterface.h
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedProcessPythonInterface/CMakeLists.txt
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedProcessPythonInterface/ScriptedProcessPythonInterface.cpp
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedProcessPythonInterface/ScriptedProcessPythonInterface.h
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedThreadPlanPythonInterface.cpp
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedThreadPlanPythonInterface.h
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedThreadPlanPythonInterface/CMakeLists.txt
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedThreadPlanPythonInterface/ScriptedThreadPlanPythonInterface.cpp
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedThreadPlanPythonInterface/ScriptedThreadPlanPythonInterface.h
    M lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp

  Log Message:
  -----------
  [lldb/Commands] Add `scripting template list` command with auto discovery

This patch introduces a new `template` multiword sub-command to the
`scripting` top-level command. As the name suggests, this sub-command
operates on scripting templates, and currently has the ability to
automatically discover the various scripting extensions that lldb
supports.

This was previously reviewed in #97273.

Signed-off-by: Med Ismail Bennani <ismail at bennani.ma>


  Commit: 693d757b63e5020e0fa78bb71fc16acdad5f8232
      https://github.com/llvm/llvm-project/commit/693d757b63e5020e0fa78bb71fc16acdad5f8232
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

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

  Log Message:
  -----------
  Internalize a clang Sarif function


  Commit: 6d12b3f67df429bffff6e1953d9f55867d7e2469
      https://github.com/llvm/llvm-project/commit/6d12b3f67df429bffff6e1953d9f55867d7e2469
  Author: Mel Chen <mel.chen at sifive.com>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    M llvm/include/llvm/IR/IntrinsicInst.h
    M llvm/include/llvm/IR/VectorBuilder.h
    M llvm/include/llvm/Transforms/Utils/LoopUtils.h
    M llvm/lib/IR/IntrinsicInst.cpp
    M llvm/lib/IR/VectorBuilder.cpp
    M llvm/lib/Transforms/Utils/LoopUtils.cpp
    M llvm/unittests/IR/VPIntrinsicTest.cpp

  Log Message:
  -----------
  [VP] Refactor VectorBuilder to avoid layering violation. NFC (#99276)

This patch refactors the handling of reduction to eliminate layering
violations.

* Introduced `getReductionIntrinsicID` in LoopUtils.h for mapping
recurrence kinds to llvm.vector.reduce.* intrinsic IDs.
* Updated `VectorBuilder::createSimpleTargetReduction` to accept
llvm.vector.reduce.* intrinsic directly.
* New function `VPIntrinsic::getForIntrinsic` for mapping intrinsic ID
to the same functional VP intrinsic ID.


  Commit: 73d862e478738675f5d919c6a196429acd7b5f50
      https://github.com/llvm/llvm-project/commit/73d862e478738675f5d919c6a196429acd7b5f50
  Author: Muhammad Omair Javaid <omair.javaid at linaro.org>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    M llvm/cmake/modules/LLVMExternalProjectUtils.cmake

  Log Message:
  -----------
  Revert "[LLVM] Silence compiler-rt warning in runtimes build (#99525)"

This patch broke LLVM Flang build on Windows. PR #100202
This reverts commit f6f88f4b99638821af803d1911ab6a7dac04880b.


  Commit: dfe650cdc884af3298cb3378aa1631545a13b720
      https://github.com/llvm/llvm-project/commit/dfe650cdc884af3298cb3378aa1631545a13b720
  Author: Antonio Frighetto <me at antoniofrighetto.com>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    A llvm/test/Transforms/InstCombine/struct-assign-tbaa-2.ll

  Log Message:
  -----------
  [TBAA] Introduce test for PR96483 (NFC)


  Commit: 6ce7b1f86115f475ee00003ee04833781a675e3e
      https://github.com/llvm/llvm-project/commit/6ce7b1f86115f475ee00003ee04833781a675e3e
  Author: Antonio Frighetto <me at antoniofrighetto.com>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    M llvm/include/llvm/IR/Metadata.h
    M llvm/lib/Analysis/TypeBasedAliasAnalysis.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
    M llvm/test/Transforms/InstCombine/struct-assign-tbaa-2.ll
    M llvm/test/Transforms/InstCombine/struct-assign-tbaa.ll
    R llvm/test/Transforms/SROA/tbaa-struct.ll
    M llvm/test/Transforms/SROA/tbaa-struct3.ll

  Log Message:
  -----------
  [TBAA] Do not rewrite TBAA if exists, always null out `!tbaa.struct`

Retrieve `!tbaa` metadata via `!tbaa.struct` in `adjustForAccess`
unless it already exists, as struct-path aware `MDNodes` emitted
via `new-struct-path-tbaa` may be leveraged. As `!tbaa.struct`
carries memcpy padding semantics among struct fields and `!tbaa`
is already meant to aid to alias semantics, it should be possible
to zero out `!tbaa.struct` once the memcpy has been simplified.
`SROA/tbaa-struct.ll` test has gone out of scope, as `!tbaa` has
already replaced `!tbaa.struct` in SROA.

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


  Commit: 91450f1b57b34034376662dae5452af8c992c103
      https://github.com/llvm/llvm-project/commit/91450f1b57b34034376662dae5452af8c992c103
  Author: PeterChou1 <peter.chou at mail.utoronto.ca>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    M clang-tools-extra/clang-doc/HTMLGenerator.cpp
    M clang-tools-extra/clang-doc/assets/index.js
    A clang-tools-extra/test/clang-doc/test-path-abs.cpp

  Log Message:
  -----------
  [clang-doc] switched from using relative to absolute paths (#93281)

fixes https://github.com/llvm/llvm-project/issues/92867

This patches changes the way clang-doc index navigation works,
previously it was based a relative path approach, this approach is error
prone and lead to wrong paths for the anchor tag. The new navigation way
is based on absolute paths and should work and be less confusing
codewise.
Because the differences with serving over a http server and viewing via
file system I also added export a RootPath variable to the index_json.js
file


  Commit: dc1c00f6b13f724154f9883990f8b21fb8dcccef
      https://github.com/llvm/llvm-project/commit/dc1c00f6b13f724154f9883990f8b21fb8dcccef
  Author: Hari Limaye <hari.limaye at arm.com>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/TargetFrameLowering.h
    M llvm/lib/CodeGen/StackFrameLayoutAnalysisPass.cpp
    M llvm/lib/CodeGen/TargetFrameLoweringImpl.cpp
    M llvm/lib/Target/AArch64/AArch64FrameLowering.cpp
    M llvm/lib/Target/AArch64/AArch64FrameLowering.h
    M llvm/test/CodeGen/AArch64/sve-stack-frame-layout.ll

  Log Message:
  -----------
  [StackFrameLayoutAnalysis] Use target-specific hook for SP offsets (#100386)

StackFrameLayoutAnalysis currently calculates SP-relative offsets in a
target-independent way via MachineFrameInfo offsets. This is incorrect
for some Targets, e.g. AArch64, when there are scalable vector stack
slots.

This patch adds a virtual function to TargetFrameLowering to provide
offsets from SP, with a default implementation matching what is
currently used in StackFrameLayoutAnalysis, and refactors
StackFrameLayoutAnalysis to use this function. Only non-zero scalable
offsets are output by the analysis pass.

An implementation of this function is added for AArch64 targets, which
aims to provide correct SP offsets in most cases.


  Commit: f48c16631de07b47e0721b88bd8004e63897f29a
      https://github.com/llvm/llvm-project/commit/f48c16631de07b47e0721b88bd8004e63897f29a
  Author: David Spickett <david.spickett at linaro.org>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    M lldb/source/Host/linux/Host.cpp

  Log Message:
  -----------
  [lldb][Linux] Parse, but don't store "comm" from /proc/stat file (#100387)

As reported in https://github.com/llvm/llvm-project/issues/89710, the %s
code used for `comm` could and probably does, overflow the buffer.
Likely we haven't seen it cause problems because the following data is
overwritten right afterwards.

Also scanf isn't a great choice here as this `comm` can include many
characters that might trip up %s.

We don't actually use `comm`, so parse but don't store it so we're not
overflowing anything.


  Commit: c3a2efceb53e1e3ab9b92e5bf6518ab51f4713a9
      https://github.com/llvm/llvm-project/commit/c3a2efceb53e1e3ab9b92e5bf6518ab51f4713a9
  Author: Med Ismail Bennani <ismail at bennani.ma>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/OperatingSystemPythonInterface/OperatingSystemPythonInterface.h
    M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedPlatformPythonInterface/ScriptedPlatformPythonInterface.cpp
    M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedProcessPythonInterface/ScriptedProcessPythonInterface.cpp
    M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedThreadPlanPythonInterface/ScriptedThreadPlanPythonInterface.h

  Log Message:
  -----------
  [lldb/Plugins] Fix build failure on windows following 2914a4b88837

This patch tries to fix the following build failure on windows:

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

This started happening following 2914a4b88837, and it seems to be caused
by some special `#include` ordering for the lldb-python header on Windows.

Signed-off-by: Med Ismail Bennani <ismail at bennani.ma>


  Commit: 6a5a64c56bc6c7183935367d3cf915ccdd103882
      https://github.com/llvm/llvm-project/commit/6a5a64c56bc6c7183935367d3cf915ccdd103882
  Author: Christian Ulmann <christianulmann at gmail.com>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    M mlir/lib/Dialect/Bufferization/Transforms/BufferDeallocationSimplification.cpp
    M mlir/lib/Transforms/Utils/RegionUtils.cpp
    M mlir/test/Dialect/Bufferization/Transforms/OwnershipBasedBufferDeallocation/dealloc-branchop-interface.mlir
    M mlir/test/Dialect/Linalg/detensorize_entry_block.mlir
    M mlir/test/Dialect/Linalg/detensorize_if.mlir
    M mlir/test/Dialect/Linalg/detensorize_while.mlir
    M mlir/test/Dialect/Linalg/detensorize_while_impure_cf.mlir
    M mlir/test/Dialect/Linalg/detensorize_while_pure_cf.mlir
    M mlir/test/Transforms/canonicalize-block-merge.mlir
    M mlir/test/Transforms/canonicalize-dce.mlir
    M mlir/test/Transforms/make-isolated-from-above.mlir
    R mlir/test/Transforms/test-canonicalize-merge-large-blocks.mlir

  Log Message:
  -----------
  Revert "[mlir] Fix block merging" (#100510)

Reverts llvm/llvm-project#97697

This commit introduced non-trivial bugs related to type consistency.


  Commit: d82df1b891fecae0af7de5e970b592ce37178a30
      https://github.com/llvm/llvm-project/commit/d82df1b891fecae0af7de5e970b592ce37178a30
  Author: Edd Dawson <edd.dawson at sony.com>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    M clang/lib/Driver/ToolChains/PS4CPU.cpp
    M clang/test/Driver/lto-jobs.c
    M clang/test/Driver/ps4-linker.c
    M clang/test/Driver/ps5-linker.c
    M clang/test/Driver/unified-lto.c

  Log Message:
  -----------
  [PS4/PS5][Driver] Always pass LTO options to the linker (#100423)

The driver doesn't know if LTO will occur at link time. That's
determined by the presence or absence of LLVM bitcode objects among
those ingested by the linker.

For this reason, LTO options for codegen etc must be passed to the
linker unconditionally. If LTO does not occur, these options have no
effect.

Also simplify the way LTO options are supplied to the PS4 linker.
`-lto-debug-options` and `-lto-thin-debug-options` are combined and
routed to the same place. So, always use the former, regardless of
full/thin LTO mode.

SIE tracker: TOOLCHAIN-16575


  Commit: c7a3346ab6a8fbd551a80bd4028ec8624daa35e4
      https://github.com/llvm/llvm-project/commit/c7a3346ab6a8fbd551a80bd4028ec8624daa35e4
  Author: Andrzej Warzyński <andrzej.warzynski at arm.com>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    M mlir/lib/Dialect/Linalg/Transforms/Vectorization.cpp
    M mlir/test/Dialect/Linalg/vectorize-tensor-extract-masked.mlir

  Log Message:
  -----------
  [mlir][linalg] Fix scalable vectorisation of tensor.extract (#100325)

This PR fixes one very specific aspect of vectorising `tensor.extract`
Ops when targeting scalable vectors. Namely, it makes sure that the
scalable flag is correctly propagated when creating
`vector::ShapeCastOp`.

BEFORE:
```mlir
vector.shape_cast %idx_vec : vector<1x1x[4]xindex> to vector<4xindex>
```

AFTER:
```mlir
vector.shape_cast %idx_vec : vector<1x1x[4]xindex> to vector<[4]xindex>
```

This particular ShapeCastOp is created when generating an index for
`vector.transfer_read` operations. Strictly speaking, casting is not
really required. However, it makes the subsequent address calculation
much simpler (*).

The following test is updated to demonstrate the use of
`vector.shape_cast` by the vectoriser:
*
@masked_static_vectorize_nd_tensor_extract_with_affine_apply_contiguous

Similar test with scalable vectors is also added.

(*) At this point in the vectoriser it is known
that all leading dims in the index vector are "1").


  Commit: 98c73d5df7ff0b5d9c10bc9d44a584d631def1e6
      https://github.com/llvm/llvm-project/commit/98c73d5df7ff0b5d9c10bc9d44a584d631def1e6
  Author: Andrzej Warzyński <andrzej.warzynski at arm.com>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    M mlir/include/mlir/IR/BuiltinTypes.td
    M mlir/lib/Dialect/Vector/IR/VectorOps.cpp
    M mlir/test/Dialect/Vector/invalid.mlir

  Log Message:
  -----------
  [mlir][vector] Restrict vector.shape_cast (scalable vectors) (#100331)

Updates the verifier for `vector.shape_cast` so that incorrect cases
where "scalability" is dropped are immediately rejected. For example:
```mlir
  vector.shape_cast %vec : vector<1x1x[4]xindex> to vector<4xindex>
```

Also, as a separate PR, I've prepared a fix for the Linalg vectorizer to
avoid generating such shape casts (*):
* https://github.com/llvm/llvm-project/pull/100325

(*) Note, that's just one specific case that I've identified so far.


  Commit: 4ca1a901dc6ca1926a594f57e6c4997ea9d185a4
      https://github.com/llvm/llvm-project/commit/4ca1a901dc6ca1926a594f57e6c4997ea9d185a4
  Author: kadir çetinkaya <kadircet at google.com>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    M clang/lib/Sema/SemaDecl.cpp
    M clang/unittests/Tooling/ToolingTest.cpp

  Log Message:
  -----------
  [clang][CUDA] Assume unknown emission status for skipped function definitions (#100124)

Emission status seems to be only used by cuda/openmp/hip compiles, to
figure out
when to emit diagnostics. Current logic emits "uknown" when definition
is
missing, so i extended that to skipped-function-bodies as well.


  Commit: f87e9d42c70476b63f4c87e52651f653f7e2f036
      https://github.com/llvm/llvm-project/commit/f87e9d42c70476b63f4c87e52651f653f7e2f036
  Author: David Spickett <david.spickett at linaro.org>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    M libcxx/test/std/language.support/support.runtime/ctime.timespec.compile.pass.cpp
    M libcxx/utils/ci/build-picolibc.sh

  Log Message:
  -----------
  [libcxx][test] Update picolibc version (#100348)

This is the latest as of today, and it fixes one of the xfails.

Since
https://github.com/picolibc/picolibc/commit/5e4d0c80f49b4efe8be85e36b5e85d65bd343214,
TIME_UTC is defined.


  Commit: 456c5121f8e6f37881f236bdf573ef29cad5af1e
      https://github.com/llvm/llvm-project/commit/456c5121f8e6f37881f236bdf573ef29cad5af1e
  Author: kadir çetinkaya <kadircet at google.com>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    M clang/include/clang/Driver/Options.td
    A clang/test/Frontend/skip-function-bodies.cpp

  Log Message:
  -----------
  [clang][Driver] Add cc1 flag for setting SkipFunctionBodies (#100135)

This is an option set by certain tools (clangd and ASTUnit). Sometimes
there are crashes in clang, unique to this configuration and it's really
hard to provide reproducers without invoking the tool.


  Commit: 74e964c7c17cae6fd523bc93b3644893853989fc
      https://github.com/llvm/llvm-project/commit/74e964c7c17cae6fd523bc93b3644893853989fc
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.exp.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.exp.prim.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.exp.row.ll

  Log Message:
  -----------
  [AMDGPU] Add GFX12 test coverage for export instructions (#100415)


  Commit: e24dc34aa085b9e8d3ea58cc5f59f80bc4c7cdb4
      https://github.com/llvm/llvm-project/commit/e24dc34aa085b9e8d3ea58cc5f59f80bc4c7cdb4
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp
    M llvm/test/CodeGen/AMDGPU/kernel-argument-dag-lowering.ll

  Log Message:
  -----------
  AMDGPU: Fix asserting in DAG kernel argument lowering on v6i32 (#100528)

Remove this pointless assertion for the number of vector elements.


  Commit: 6f37d42a33ba09add14a9a1f422cb489ba02336e
      https://github.com/llvm/llvm-project/commit/6f37d42a33ba09add14a9a1f422cb489ba02336e
  Author: chuongg3 <chuong.goh at arm.com>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/GISel/AArch64InstructionSelector.cpp
    M llvm/lib/Target/AArch64/GISel/AArch64RegisterBankInfo.cpp
    M llvm/test/CodeGen/AArch64/GlobalISel/regbank-dup.mir
    M llvm/test/CodeGen/AArch64/GlobalISel/select-dup.mir
    M llvm/test/CodeGen/AArch64/arm64-dup.ll
    M llvm/test/CodeGen/AArch64/neon-mov.ll

  Log Message:
  -----------
  [AArch64][GlobalISel] Reland Make G_DUP immediate 32-bits or larger (#96780) (#99014)

Immediate operand gets extended in RegBankSelect to at least 32 bits to
allow for better pattern matching in TableGen

The previous patch was erasing a constant without checking if it has
more than one use

Changes:
 - Does not erase the constant
 - Added @v_dup16_const test


  Commit: ba461f8c6278a7b2fd7695454c1f184c38897ecd
      https://github.com/llvm/llvm-project/commit/ba461f8c6278a7b2fd7695454c1f184c38897ecd
  Author: Him188 <tguan at nvidia.com>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/GlobalISel/LegalizerHelper.h
    M llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
    M llvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp
    M llvm/test/CodeGen/AArch64/arm64-ccmp.ll
    A llvm/test/CodeGen/AArch64/fcmp-fp128.ll
    M llvm/test/CodeGen/AArch64/fcmp.ll

  Log Message:
  -----------
  [AArch64][GlobalISel] Legalize fp128 types as libcalls for G_FCMP (#98452)

- Generate libcall for supported predicates.
- Generate unsupported predicates as combinations of supported
predicates.
- Vectors are scalarized, however some cases like `v3f128_fp128` are still failing, because we failed to legalize G_OR for these types.

GISel now generates the same code as SDAG, however, note the difference
in the `one` case.


  Commit: b72689a5cbd8645c183476cd87e32948308c5b64
      https://github.com/llvm/llvm-project/commit/b72689a5cbd8645c183476cd87e32948308c5b64
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

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

  Log Message:
  -----------
  [LV] Ignore live-out users in cost model if scalar epilogue is required.

Follow-up to ba8126b6fef79.

If a scalar epilogue is required, users outside the loop won't use
live-outs from the vector loop but from the scalar epilogue. Ignore them if
that is the case.

This fixes another case where the VPlan-based cost-model more accurately
computes cost.

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


  Commit: 91073380ac5a0dceebdd09f360a1dc194d7ee93f
      https://github.com/llvm/llvm-project/commit/91073380ac5a0dceebdd09f360a1dc194d7ee93f
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    M llvm/include/llvm/Analysis/AliasAnalysis.h
    M llvm/lib/Analysis/BasicAliasAnalysis.cpp
    A llvm/test/Transforms/SLPVectorizer/X86/pr98978.ll

  Log Message:
  -----------
  [BasicAA] Fix handling of indirect assumption based results (#100130)

If a result is potentially based on a not yet proven assumption,
BasicAA will remember it inside AssumptionBasedResults and remove
the cache entry if an assumption higher up is later disproved.
However, we currently miss the case where another cache entry ends
up depending on such an AssumptionBased result.

Fix this by introducing an additional AssumptionBased state for
cache entries. If such a result is used, we'll still increment
AAQI.NumAssumptionUses, which means that the using entry will
also become AssumptionBased and be cleared if the assumption is
disproved.

At the end of the root query, convert remaining AssumptionBased
results into definitive results.

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


  Commit: ca69444cef0858ad4facecbfc2232a02422aca9f
      https://github.com/llvm/llvm-project/commit/ca69444cef0858ad4facecbfc2232a02422aca9f
  Author: Shivam Gupta <shivam98.tkg at gmail.com>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    M clang/include/clang/Analysis/FlowSensitive/MapLattice.h

  Log Message:
  -----------
  [Clang] Fix a variable shadowing in MapLattice (NFC) (#95697)

Reported in https://pvs-studio.com/en/blog/posts/cpp/1126/, fragment
N10.

The PVS-Studio warning:
V570 The 'C' variable is assigned to itself. MapLattice.h:52


  Commit: 90a997988279ecd0e9aefcf14ee0642093b03398
      https://github.com/llvm/llvm-project/commit/90a997988279ecd0e9aefcf14ee0642093b03398
  Author: Kai Yan <aklkaiyan at tencent.com>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    M llvm/lib/CodeGen/WindowScheduler.cpp
    A llvm/test/CodeGen/Hexagon/swp-ws-stall-cycle.mir

  Log Message:
  -----------
  [llvm][CodeGen] Fixed a bug in stall cycle calculation for window scheduler (#99451)

Fixed a bug in stall cycle calculation.
When a register defined by an instruction in the current iteration is
used by an instruction in the next iteration, we have modified the
number of stall cycle that need to be inserted.


  Commit: 72532c921989990180b11d46e38a92874008f51a
      https://github.com/llvm/llvm-project/commit/72532c921989990180b11d46e38a92874008f51a
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/test/Transforms/LoopVectorize/AArch64/divs-with-scalable-vfs.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/reduction-recurrence-costs-sve.ll
    M llvm/test/Transforms/LoopVectorize/X86/divs-with-tail-folding.ll
    M llvm/test/Transforms/LoopVectorize/first-order-recurrence-sink-replicate-region.ll

  Log Message:
  -----------
  [LV] Don't predicate divs with invariant divisor when folding tail (#98904)

When folding the tail, at least one of the lanes must execute
unconditionally. If the divisor is loop-invariant no predication is
needed, as predication would not prevent the divide-by-0 on the executed
lane.

Depends on https://github.com/llvm/llvm-project/pull/98892.

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


  Commit: f8006a5932b1ccdf3a1eed7b20b5cb608c0a020c
      https://github.com/llvm/llvm-project/commit/f8006a5932b1ccdf3a1eed7b20b5cb608c0a020c
  Author: Kristóf Umann <dkszelethus at gmail.com>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

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

  Log Message:
  -----------
  [analyzer][NFC] Add some docs for LazyCompoundValue (#97407)

Yes, I basically copy-pasted some posts from discord and Artem's book,
but these make for a rather decent docs.

---------

Co-authored-by: Artem Dergachev <noqnoqneo at gmail.com>
Co-authored-by: Donát Nagy <donat.nagy at ericsson.com>
Co-authored-by: Balazs Benics <benicsbalazs at gmail.com>


  Commit: 2ba3fe7356f065757a2279f65e4ef5c8f1476293
      https://github.com/llvm/llvm-project/commit/2ba3fe7356f065757a2279f65e4ef5c8f1476293
  Author: Shivam Gupta <shivam98.tkg at gmail.com>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedPythonInterface.h

  Log Message:
  -----------
  [lldb] Fix incorrect uses of logical operator in 'if' condition check (NFC) (#94779)

The condition checking for missing class name, interpreter dictionary,
and script object incorrectly used logical AND (&&), which could never
be true to enter the 'if' block.

This commit uses separate if conditions for each class name, interpreter
dictionary, and script object.

Cought by cppcheck -

lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedPythonInterface.h:89:11:
warning: Identical inner 'if' condition is always true.
[identicalInnerCondition]

lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedPythonInterface.h:91:16:
warning: Identical inner 'if' condition is always true.
[identicalInnerCondition]

Fix #89195

---------

Co-authored-by: Shivam Gupta <shivma98.tkg at gmail.com>


  Commit: 90929dd97a8f2c00148bee676bf8b44bec063d9b
      https://github.com/llvm/llvm-project/commit/90929dd97a8f2c00148bee676bf8b44bec063d9b
  Author: Balazs Benics <benicsbalazs at gmail.com>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    M clang/lib/StaticAnalyzer/Core/CallEvent.cpp
    M clang/test/Analysis/call-invalidation.cpp

  Log Message:
  -----------
  [analyzer] Don't invalidate the super region when a std object ctor runs (#100405)

CPP-5269


  Commit: 534e2dd29f252cc13b94312895d2f4b39b54b9d4
      https://github.com/llvm/llvm-project/commit/534e2dd29f252cc13b94312895d2f4b39b54b9d4
  Author: yronglin <yronglin777 at gmail.com>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    M clang/lib/AST/Interp/Compiler.cpp
    M clang/test/SemaCXX/cxx1z-decomposition.cpp

  Log Message:
  -----------
  [Clang][Interp] Visit `DecompositionDecl` and create a local variable (#100400)

The following code should be well-formed:
```C++
float decompose_complex(_Complex float cf) {
  static _Complex float scf;
  auto &[sre, sim] = scf;
  // ok, this is references initialized by constant expressions all the way down
  static_assert(&sre == &__real scf);
  static_assert(&sim == &__imag scf);

  auto [re, im] = cf;
  return re*re + im*im;
}

```
We should visit `DecompositionDecl` and create a local variable but not
a create a dummy value directly.

---------

Signed-off-by: yronglin <yronglin777 at gmail.com>


  Commit: f6431f0c52689be4d6a4753d261cb6c415eff5a1
      https://github.com/llvm/llvm-project/commit/f6431f0c52689be4d6a4753d261cb6c415eff5a1
  Author: runseny <145632023+runseny at users.noreply.github.com>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    M mlir/lib/Conversion/GPUCommon/OpToFuncCallLowering.h
    M mlir/lib/Conversion/GPUToNVVM/LowerGpuOpsToNVVMOps.cpp
    M mlir/lib/Conversion/MathToROCDL/MathToROCDL.cpp
    M mlir/test/Conversion/GPUToNVVM/gpu-to-nvvm.mlir

  Log Message:
  -----------
  [MLIR][GPUToNVVM] support fastMath and other non-supported mathOp (#99890)

Support fastMath and other non-supported mathOp which only require float
operands and call libdevice function directly to nvvm.

1. lowering mathOp with fastMath attribute to correct libdevice
intrinsic.
2. some mathOp in math dialect has been lowered to libdevice now, but it
doesn't cover all mathOp. so this mr lowers all the remaining mathOp
which only require float operands.


  Commit: fc9b9e809381cf9232e5c81439f693d4db47efb3
      https://github.com/llvm/llvm-project/commit/fc9b9e809381cf9232e5c81439f693d4db47efb3
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

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

  Log Message:
  -----------
  Revert "MTM: fix issues after cursory reading" (#100559)

Reverts llvm/llvm-project#100404

This broke the gcc7 build here:
https://lab.llvm.org/buildbot/#/builders/116/builds/1724


  Commit: f916cb6184fb04b27ae7b867edcfd162c3a49694
      https://github.com/llvm/llvm-project/commit/f916cb6184fb04b27ae7b867edcfd162c3a49694
  Author: Oleksandr T. <oleksandr.tarasiuk at outlook.com>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Sema/SemaExprCXX.cpp
    M clang/test/SemaCXX/cxx2a-destroying-delete.cpp

  Log Message:
  -----------
  [Clang] fix assertion failure in invalid delete operator declaration check (#99308)

Fixes #96191


  Commit: a466db2b32cccfdbd8bbd27cfa2fb51651192075
      https://github.com/llvm/llvm-project/commit/a466db2b32cccfdbd8bbd27cfa2fb51651192075
  Author: David Spickett <david.spickett at linaro.org>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedPythonInterface.h

  Log Message:
  -----------
  Revert "[lldb] Fix incorrect logical operator in 'if' condition check (NFC)" (#100561)

Reverts llvm/llvm-project#94779

Due to bot failures:
https://lab.llvm.org/buildbot/#/builders/18/builds/1371


  Commit: af1d2b9fb1c6065d3a4611f086b8c83a0c05795c
      https://github.com/llvm/llvm-project/commit/af1d2b9fb1c6065d3a4611f086b8c83a0c05795c
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    M llvm/lib/CodeGen/MachineModuleInfo.cpp
    R llvm/test/CodeGen/Generic/disable-debug-info-print.ll
    R llvm/test/CodeGen/X86/disable-debug-info-print-codeview.ll
    M llvm/test/CodeGen/X86/frame-order.ll

  Log Message:
  -----------
  CodeGen: Remove -disable-debug-info-print cl::opt (#100319)

This was first introduced way back in in 2010 by
6c74a872a8d34d41b751efb68e335cbe91b5a5cc, and has little evidence
of use. Only one test attempts to make use of this, but it's
also redundant since it's also using strip to drop debug info anyway
(and that also makes the test buggy, since it's intended to test
with and without debug info).

The other tests using it were only added to test the option after
discovering it was untested and moved, in later commits.


  Commit: bf76290de48512f59f62eff20d28135c3f918ea5
      https://github.com/llvm/llvm-project/commit/bf76290de48512f59f62eff20d28135c3f918ea5
  Author: Abid Qadeer <haqadeer at amd.com>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    M flang/lib/Optimizer/Transforms/AddDebugInfo.cpp
    A flang/test/Transforms/debug-96314.fir

  Log Message:
  -----------
  [flang][debug] Set scope of internal functions correctly. (#99531)

The functions internal to subroutine should have the scope set to the
parent function. This allows a user to evaluate local variables of
parent function when control is stopped in the child.

Fixes #96314


  Commit: 0fedfd83d75415837eb91f56ec24f4b392bf6c57
      https://github.com/llvm/llvm-project/commit/0fedfd83d75415837eb91f56ec24f4b392bf6c57
  Author: Timm Bäder <tbaeder at redhat.com>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

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

  Log Message:
  -----------
  [clang][Interp][NFC] Protect getPtrBase{,Pop} ops from past-end ptrs


  Commit: dfeb3991fb489a703f631ab0c34b58f80568038d
      https://github.com/llvm/llvm-project/commit/dfeb3991fb489a703f631ab0c34b58f80568038d
  Author: James Y Knight <jyknight at google.com>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    M llvm/bindings/ocaml/llvm/llvm.mli
    M llvm/bindings/ocaml/llvm/llvm_ocaml.c
    M llvm/docs/BitCodeFormat.rst
    M llvm/docs/LangRef.rst
    M llvm/docs/ReleaseNotes.rst
    M llvm/include/llvm-c/Core.h
    M llvm/include/llvm/IR/DataLayout.h
    M llvm/include/llvm/IR/Type.h
    M llvm/lib/Analysis/ConstantFolding.cpp
    M llvm/lib/AsmParser/LLLexer.cpp
    M llvm/lib/Bitcode/Reader/BitcodeReader.cpp
    M llvm/lib/Bitcode/Writer/BitcodeWriter.cpp
    M llvm/lib/CodeGen/ValueTypes.cpp
    M llvm/lib/IR/AsmWriter.cpp
    M llvm/lib/IR/ConstantFold.cpp
    M llvm/lib/IR/Core.cpp
    M llvm/lib/IR/DataLayout.cpp
    M llvm/lib/IR/Function.cpp
    M llvm/lib/IR/Instructions.cpp
    M llvm/lib/IR/LLVMContextImpl.cpp
    M llvm/lib/IR/LLVMContextImpl.h
    M llvm/lib/IR/Type.cpp
    M llvm/lib/Target/DirectX/DXILWriter/DXILBitcodeWriter.cpp
    M llvm/lib/Target/Hexagon/HexagonTargetObjectFile.cpp
    M llvm/lib/Target/X86/X86CallingConv.td
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/lib/Target/X86/X86InstCombineIntrinsic.cpp
    M llvm/lib/Target/X86/X86IntrinsicsInfo.h
    M llvm/lib/Transforms/IPO/DeadArgumentElimination.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineCasts.cpp
    M llvm/lib/Transforms/Instrumentation/MemorySanitizer.cpp
    R llvm/test/Assembler/x86mmx.ll
    M llvm/test/Bitcode/bcanalyzer-types.ll
    M llvm/test/Bitcode/compatibility-3.6.ll
    M llvm/test/Bitcode/compatibility-3.7.ll
    M llvm/test/Bitcode/compatibility-3.8.ll
    M llvm/test/Bitcode/compatibility-3.9.ll
    M llvm/test/Bitcode/compatibility-4.0.ll
    M llvm/test/Bitcode/compatibility-5.0.ll
    M llvm/test/Bitcode/compatibility-6.0.ll
    M llvm/test/Bitcode/compatibility.ll
    M llvm/test/CodeGen/X86/2008-09-05-sinttofp-2xi32.ll
    M llvm/test/CodeGen/X86/avx-vbroadcast.ll
    M llvm/test/CodeGen/X86/avx2-vbroadcast.ll
    M llvm/test/CodeGen/X86/fast-isel-bc.ll
    M llvm/test/CodeGen/X86/mmx-arg-passing-x86-64.ll
    M llvm/test/CodeGen/X86/mmx-arg-passing.ll
    M llvm/test/CodeGen/X86/mmx-arith.ll
    M llvm/test/CodeGen/X86/mmx-bitcast-fold.ll
    M llvm/test/CodeGen/X86/mmx-bitcast.ll
    M llvm/test/CodeGen/X86/mmx-cvt.ll
    M llvm/test/CodeGen/X86/mmx-fold-load.ll
    M llvm/test/CodeGen/X86/mmx-intrinsics.ll
    M llvm/test/CodeGen/X86/pr23246.ll
    M llvm/test/CodeGen/X86/pr29222.ll
    M llvm/test/CodeGen/X86/select-mmx.ll
    M llvm/test/CodeGen/X86/stack-folding-mmx.ll
    M llvm/test/CodeGen/X86/vec_extract-mmx.ll
    M llvm/test/CodeGen/X86/vec_insert-7.ll
    M llvm/test/CodeGen/X86/vec_insert-mmx.ll
    M llvm/test/Instrumentation/MemorySanitizer/X86/mmx-intrinsics.ll
    M llvm/test/Instrumentation/MemorySanitizer/vector_arith.ll
    M llvm/test/Instrumentation/MemorySanitizer/vector_cvt.ll
    M llvm/test/Instrumentation/MemorySanitizer/vector_pack.ll
    M llvm/test/Instrumentation/MemorySanitizer/vector_shift.ll
    M llvm/test/Transforms/InstCombine/X86/x86-movmsk.ll
    M llvm/test/Transforms/InstCombine/bitcast-vec-canon-inseltpoison.ll
    M llvm/test/Transforms/InstCombine/bitcast-vec-canon.ll
    M llvm/test/Transforms/InstSimplify/ConstProp/loads.ll
    R llvm/test/Transforms/LoopUnroll/X86/mmx.ll
    M llvm/test/Transforms/SLPVectorizer/X86/bad_types.ll
    M llvm/test/Transforms/SROA/pr57796.ll
    M llvm/tools/llvm-c-test/echo.cpp
    M llvm/tools/llvm-stress/llvm-stress.cpp
    M llvm/unittests/IR/InstructionsTest.cpp
    M mlir/docs/Dialects/LLVM.md
    M mlir/include/mlir/Dialect/LLVMIR/LLVMTypes.h
    M mlir/lib/Dialect/LLVMIR/IR/LLVMDialect.cpp
    M mlir/lib/Dialect/LLVMIR/IR/LLVMTypeSyntax.cpp
    M mlir/lib/Dialect/LLVMIR/IR/LLVMTypes.cpp
    M mlir/lib/Target/LLVMIR/TypeFromLLVM.cpp
    M mlir/lib/Target/LLVMIR/TypeToLLVM.cpp
    M mlir/test/Dialect/LLVMIR/types.mlir
    M mlir/test/Target/LLVMIR/llvmir-types.mlir

  Log Message:
  -----------
  Remove the `x86_mmx` IR type. (#98505)

It is now translated to `<1 x i64>`, which allows the removal of a bunch
of special casing.

This _incompatibly_ changes the ABI of any LLVM IR function with
`x86_mmx` arguments or returns: instead of passing in mmx registers,
they will now be passed via integer registers. However, the real-world
incompatibility caused by this is expected to be minimal, because Clang
never uses the x86_mmx type -- it lowers `__m64` to either `<1 x i64>`
or `double`, depending on ABI.

This change does _not_ eliminate the SelectionDAG `MVT::x86mmx` type.
That type simply no longer corresponds to an IR type, and is used only
by MMX intrinsics and inline-asm operands.

Because SelectionDAGBuilder only knows how to generate the
operands/results of intrinsics based on the IR type, it thus now
generates the intrinsics with the type MVT::v1i64, instead of
MVT::x86mmx. We need to fix this before the DAG LegalizeTypes, and thus
have the X86 backend fix them up in DAGCombine. (This may be a
short-lived hack, if all the MMX intrinsics can be removed in upcoming
changes.)

Works towards issue #98272.


  Commit: fd17064dfa08c252c12b71167bc588f57e6a082c
      https://github.com/llvm/llvm-project/commit/fd17064dfa08c252c12b71167bc588f57e6a082c
  Author: Zibi Sarbinowski <zibi at ca.ibm.com>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    M libcxx/test/std/input.output/filesystems/fs.op.funcs/fs.op.copy_file/copy_file_large.pass.cpp

  Log Message:
  -----------
  Fix fs.op.copy_file/copy_file_large.pass.cpp on z/OS (#100382)

This PR is required to fix copy_file_large.pass.cpp which is failing on
z/OS in all ASCII variations. The problem is that a destination file is
opened in binary mode and auto-conversion does not happen when this lit
is compiled with -fzos-le-char-mode=ascii.

In addition opening a destination file will match a text mode of
`fopen()` of a source file.


  Commit: ca00cec997c2a22dd6603cddb8bab789e1b01d34
      https://github.com/llvm/llvm-project/commit/ca00cec997c2a22dd6603cddb8bab789e1b01d34
  Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    M llvm/lib/IR/ConstantRange.cpp
    M llvm/test/Transforms/CorrelatedValuePropagation/mul.ll
    M llvm/unittests/IR/ConstantRangeTest.cpp

  Log Message:
  -----------
  [ConstantRange] Infer nonnegative for mul nuw nsw (#100554)

Alive2: https://alive2.llvm.org/ce/z/byzmsV


  Commit: 63a7ed45e89799adcca5c0493e184ed946c4a470
      https://github.com/llvm/llvm-project/commit/63a7ed45e89799adcca5c0493e184ed946c4a470
  Author: Timm Bäder <tbaeder at redhat.com>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    M clang/lib/AST/Interp/Compiler.cpp
    M clang/lib/AST/Interp/Compiler.h
    M clang/lib/AST/Interp/Interp.h
    M clang/lib/AST/Interp/Opcodes.td
    M clang/test/SemaCXX/new-delete-0x.cpp

  Log Message:
  -----------
  [clang][Interp] Reject non-literal values


  Commit: 430cf6537b1e872faabf7b6859b1f7d556dc0da9
      https://github.com/llvm/llvm-project/commit/430cf6537b1e872faabf7b6859b1f7d556dc0da9
  Author: Ivan Kosarev <ivan.kosarev at amd.com>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.cpp
    M llvm/lib/Target/AMDGPU/DSInstructions.td
    M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUInstPrinter.cpp
    M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUInstPrinter.h
    M llvm/lib/Target/AMDGPU/SIInstrInfo.td

  Log Message:
  -----------
  [AMDGPU][NFCI] Declare offset0/1 operands to be i32. (#100560)

Being of type i8 makes them signed, which they aren't, and requires
extra work masking them on verbalisation.

Part of <https://github.com/llvm/llvm-project/issues/62629>.


  Commit: de792d6d92c3d4fde7065f2590133acf81f1a93e
      https://github.com/llvm/llvm-project/commit/de792d6d92c3d4fde7065f2590133acf81f1a93e
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    M llvm/test/Transforms/SLPVectorizer/X86/arith-add-ssat.ll
    M llvm/test/Transforms/SLPVectorizer/X86/arith-add-usat.ll
    M llvm/test/Transforms/SLPVectorizer/X86/arith-sub-ssat.ll
    M llvm/test/Transforms/SLPVectorizer/X86/arith-sub-usat.ll

  Log Message:
  -----------
  [SLP][X86] Update add/sub sat test checks to share common SSE prefixes


  Commit: b2b68c241a61bbbe0e2f89cb2182f1b1bec564b6
      https://github.com/llvm/llvm-project/commit/b2b68c241a61bbbe0e2f89cb2182f1b1bec564b6
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    M llvm/lib/Target/X86/X86TargetTransformInfo.cpp
    M llvm/test/Analysis/CostModel/X86/arith-ssat-codesize.ll
    M llvm/test/Analysis/CostModel/X86/arith-ssat-latency.ll
    M llvm/test/Analysis/CostModel/X86/arith-ssat-sizelatency.ll
    M llvm/test/Analysis/CostModel/X86/arith-ssat.ll
    M llvm/test/Analysis/CostModel/X86/arith-usat-codesize.ll
    M llvm/test/Analysis/CostModel/X86/arith-usat-latency.ll
    M llvm/test/Analysis/CostModel/X86/arith-usat-sizelatency.ll
    M llvm/test/Analysis/CostModel/X86/arith-usat.ll
    M llvm/test/Transforms/SLPVectorizer/X86/arith-add-ssat.ll
    M llvm/test/Transforms/SLPVectorizer/X86/arith-add-usat.ll
    M llvm/test/Transforms/SLPVectorizer/X86/arith-sub-ssat.ll
    M llvm/test/Transforms/SLPVectorizer/X86/arith-sub-usat.ll

  Log Message:
  -----------
  [CostModel][X86] Add add/sat sat intrinsic costs

Fixes regressions from #97463 due to missing costs for custom lowered ops


  Commit: a79db96ec0decca4fe45579e039cf5589345b3ed
      https://github.com/llvm/llvm-project/commit/a79db96ec0decca4fe45579e039cf5589345b3ed
  Author: Kai Nacke <kai.peter.nacke at ibm.com>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/GISel/AArch64RegisterBankInfo.cpp
    M llvm/lib/Target/AArch64/GISel/AArch64RegisterBankInfo.h
    M llvm/lib/Target/ARM/ARMRegisterBankInfo.cpp
    M llvm/lib/Target/ARM/ARMRegisterBankInfo.h
    M llvm/lib/Target/M68k/GISel/M68kRegisterBankInfo.cpp
    M llvm/lib/Target/M68k/GISel/M68kRegisterBankInfo.h
    M llvm/lib/Target/Mips/MipsRegisterBankInfo.cpp
    M llvm/lib/Target/Mips/MipsRegisterBankInfo.h
    M llvm/lib/Target/PowerPC/GISel/PPCRegisterBankInfo.cpp
    M llvm/lib/Target/PowerPC/GISel/PPCRegisterBankInfo.h
    M llvm/lib/Target/RISCV/GISel/RISCVRegisterBankInfo.cpp
    M llvm/lib/Target/RISCV/GISel/RISCVRegisterBankInfo.h
    M llvm/lib/Target/SPIRV/SPIRVRegisterBankInfo.cpp
    M llvm/lib/Target/X86/GISel/X86RegisterBankInfo.cpp
    M llvm/lib/Target/X86/GISel/X86RegisterBankInfo.h
    A llvm/test/TableGen/RegBankFromRegClass.td
    M llvm/utils/TableGen/RegisterBankEmitter.cpp

  Log Message:
  -----------
  [GISel][TableGen] Generate getRegBankFromRegClass (#99896)

Generating the mapping from a register class to a register bank is
complex:
 - there can be lots of register classes
 - the mapping may be ambiguos
- a register class can span several register banks (e.g. a register
class containing all registers)
- the type information is not enough to decide which register bank to
map to (e.g. a register class containing floating point and vector
registers, and all register can represent a f64 value)

The approach taken here is to encode the register banks in an array
indexed by the ID of the register class. To save space, the entries are
packed into chunks of size 2^n.


  Commit: d311edd0eff2095b1e5e73b4e612e7ddd8d93d70
      https://github.com/llvm/llvm-project/commit/d311edd0eff2095b1e5e73b4e612e7ddd8d93d70
  Author: Chen Zheng <czhengsz at cn.ibm.com>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    M llvm/lib/TargetParser/PPCTargetParser.cpp

  Log Message:
  -----------
  [PowerPC] fix default cpu setting

for platform that returns nothing for getHostCPUName()
For example for target ARM on windows. For this case, -mcpu=native
should set CPU to the default according to triple instead of setting
CPU to "native"

Fixes https://lab.llvm.org/buildbot/#/builders/161/builds/873 caused by
https://github.com/llvm/llvm-project/pull/97541


  Commit: 9ad92c476907451bdc95a6c2b6a6bbba03815b4b
      https://github.com/llvm/llvm-project/commit/9ad92c476907451bdc95a6c2b6a6bbba03815b4b
  Author: Donát Nagy <donat.nagy at ericsson.com>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    M clang/test/Analysis/ctor-array.cpp
    M clang/test/Analysis/ctor.mm

  Log Message:
  -----------
  [analyzer][NFC] Minor cleanup in two test files. (#100570)

This commit contains two unrelated trivial changes:

(1) Three unused variables are removed from `ctor.mm`.
(2) A FIXME block is removed from `ctor-array.cpp` because it described
    an issue that was resolved since then.


  Commit: 12dba4d48461c571cb5bdb7c3ac6078b9a357a02
      https://github.com/llvm/llvm-project/commit/12dba4d48461c571cb5bdb7c3ac6078b9a357a02
  Author: weiwei chen <weiwei.chen at modular.com>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    M mlir/docs/Diagnostics.md
    M mlir/include/mlir/IR/Diagnostics.h
    A mlir/test/IR/diagnostic-handler-metadata.mlir
    M mlir/test/lib/IR/CMakeLists.txt
    A mlir/test/lib/IR/TestDiagnosticsMetadata.cpp
    M mlir/tools/mlir-opt/mlir-opt.cpp

  Log Message:
  -----------
  [mlir] Add metadata to Diagnostic. (#99398)

Add metadata to Diagnostic. 

Motivation: we have a use case where we want to do some filtering in our
customized Diagnostic Handler based on some customized info that is not
`location` or `severity` or `diagnostic arguments` that are member
variables of `Diagnostic`. Specifically, we want to add a unique ID to
the `Diagnostic` for the handler to filter in a compiler pass that emits
errors in async tasks with multithreading and the diagnostic handling is
associated to the task.

This patch adds a field of `metadata` to `mlir::Diagnostics` as a
general solution. `metadata` is of type `SmallVector<DiagnosticArgument,
0>` to save memory size and reuse existing `DiagnosticArgument` for
metadata type.


  Commit: daf9d7f3881e4ffd1fd5988dc1b6223c733b6bef
      https://github.com/llvm/llvm-project/commit/daf9d7f3881e4ffd1fd5988dc1b6223c733b6bef
  Author: Chen Zheng <czhengsz at cn.ibm.com>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    M clang/test/Sema/builtin-cpu-supports.c

  Log Message:
  -----------
  [PowerPC] add testcaseis for PPC, NFC

For builtin __builtin_cpu_is and __builtin_cpu_supports


  Commit: a0c590795eae48903a013699fe84db335854fa80
      https://github.com/llvm/llvm-project/commit/a0c590795eae48903a013699fe84db335854fa80
  Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    M llvm/include/llvm/Frontend/OpenMP/ConstructDecompositionT.h
    M llvm/unittests/Frontend/OpenMPDecompositionTest.cpp

  Log Message:
  -----------
  [Frontend][OpenMP] Allow implicit clauses to fail to apply (#100460)

The `linear(x)` clause implies `firstprivate(x)` on the compound
construct if `x` is not an induction variable. With more construct
combinations coming in OpenMP 6.0, the `firstprivate` clause may not be
possible to apply, e.g. in "masked simd".
An additional benefit from this change is that it allows treating leaf
constructs as combined constructs with a single constituent. Otherwise,
a `linear` clause on a lone `simd` construct could imply a
`firstprivate` clause that can't be applied.


  Commit: 8758091a70393f71c5a75805f5cbde556f6dce22
      https://github.com/llvm/llvm-project/commit/8758091a70393f71c5a75805f5cbde556f6dce22
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    M llvm/lib/Passes/PassBuilderPipelines.cpp
    M llvm/test/Other/new-pm-lto-defaults.ll
    A llvm/test/Transforms/PhaseOrdering/varargs.ll

  Log Message:
  -----------
  [LLVM] Add 'ExpandVariadicsPass' to LTO default pipeline (#100479)

Summary:
This pass expands variadic functions into non-variadic function calls
according to the target ABI. Currently, this is used as the lowering for
the NVPTX and AMDGPU targets.

This pass is currently only run late in the target's backend. However,
during LTO we want to run it before the inliner pass so that the
expanded functions can be inlined using standard heuristics. This pass
is a no-op for unsupported targets, so this won't apply to any code that
isn't already using it.


  Commit: 4db37a49a72bb9cff7a78e77439008c058383099
      https://github.com/llvm/llvm-project/commit/4db37a49a72bb9cff7a78e77439008c058383099
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    M llvm/test/Transforms/PhaseOrdering/varargs.ll

  Log Message:
  -----------
  [LLVM] Only run vararg test with the amdgpu target


  Commit: 010dcfd85fb8b8c8826f25f27324e3a958dba5f8
      https://github.com/llvm/llvm-project/commit/010dcfd85fb8b8c8826f25f27324e3a958dba5f8
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    M llvm/lib/Target/X86/X86TargetTransformInfo.cpp
    M llvm/test/Analysis/CostModel/X86/arith-overflow.ll
    M llvm/test/Analysis/CostModel/X86/costmodel.ll
    M llvm/test/Analysis/CostModel/X86/intrinsic-cost-kinds.ll
    M llvm/test/Transforms/LoopVectorize/X86/interleave-cost.ll
    M llvm/test/Transforms/LoopVectorize/X86/pr35432.ll
    M llvm/test/Transforms/LoopVectorize/X86/pr54634.ll

  Log Message:
  -----------
  [CostModel][X86] Improve add/sub/mul overflow intrinsic costs

Noticed due to x86 changes in #97463


  Commit: 51d4980a133db12888207698e39c469cb7055cac
      https://github.com/llvm/llvm-project/commit/51d4980a133db12888207698e39c469cb7055cac
  Author: Mike Rice <michael.p.rice at intel.com>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

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

  Log Message:
  -----------
  [clang][NFC] remove unneeded nullptr checks after dereference (#100489)

Fix static verifer concerns of null pointer checks after dereferencing  
the pointer. Update the assert to make it super clear it is not null and
remove the checks.


  Commit: abc2eae68290c453e1899a94eccc4ed5ea3b69c1
      https://github.com/llvm/llvm-project/commit/abc2eae68290c453e1899a94eccc4ed5ea3b69c1
  Author: Tristan Ross <tristan.ross at midstall.com>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    M bolt/CMakeLists.txt
    M bolt/include/bolt/RuntimeLibs/RuntimeLibrary.h
    M bolt/lib/CMakeLists.txt
    M bolt/lib/RuntimeLibs/HugifyRuntimeLibrary.cpp
    M bolt/lib/RuntimeLibs/InstrumentationRuntimeLibrary.cpp
    M bolt/lib/RuntimeLibs/RuntimeLibrary.cpp
    M bolt/lib/Target/AArch64/CMakeLists.txt
    M bolt/lib/Target/RISCV/CMakeLists.txt
    M bolt/lib/Target/X86/CMakeLists.txt
    M bolt/lib/Utils/CMakeLists.txt
    M bolt/lib/Utils/CommandLineOpts.cpp
    M bolt/runtime/CMakeLists.txt
    M bolt/test/lit.cfg.py
    M bolt/test/lit.site.cfg.py.in

  Log Message:
  -----------
  [BOLT] Enable standalone build (#97130)

Continue from #87196 as author did not have much time, I have taken over
working on this PR. We would like to have this so it'll be easier to
package for Nix.

Can be tested by copying cmake, bolt, third-party, and llvm directories
out into their own directory with this PR applied and then build bolt.

---------

Co-authored-by: pca006132 <john.lck40 at gmail.com>


  Commit: ffd624024865cf98644c4f9357ef369327ac0995
      https://github.com/llvm/llvm-project/commit/ffd624024865cf98644c4f9357ef369327ac0995
  Author: Tristan Ross <tristan.ross at midstall.com>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    M bolt/utils/docker/Dockerfile

  Log Message:
  -----------
  [BOLT] Update Docker to use Ubuntu 24.04 (#99421)

Updates the Dockerfile to use Ubuntu 24.04 due to CMake wanting a newer
version. Can be tested by trying to build the Docker image currently in
main and then try building the Docker image in this PR.


  Commit: 0762db6533eda3453158c7b9b0631542c47093a8
      https://github.com/llvm/llvm-project/commit/0762db6533eda3453158c7b9b0631542c47093a8
  Author: Nathan James <n.james93 at hotmail.co.uk>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    M clang-tools-extra/clang-tidy/utils/UseRangesCheck.cpp
    M clang-tools-extra/clang-tidy/utils/UseRangesCheck.h
    M clang-tools-extra/test/clang-tidy/checkers/modernize/Inputs/use-ranges/fake_std.h

  Log Message:
  -----------
  [clang-tidy] Fix crash in modernize-use-ranges (#100427)

Crash seems to be caused by the check function not handling inline
namespaces correctly for some instances. Changed how the Replacer is got
from the MatchResult now which should alleviate any potential issues

Fixes #100406


  Commit: a27f816fe56af9cc7f4f296ad6c577f6ea64349f
      https://github.com/llvm/llvm-project/commit/a27f816fe56af9cc7f4f296ad6c577f6ea64349f
  Author: Piotr Zegar <me at piotrzegar.pl>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    M clang-tools-extra/clang-tidy/readability/NonConstParameterCheck.cpp
    A clang-tools-extra/test/clang-tidy/checkers/readability/non-const-parameter.c

  Log Message:
  -----------
  [clang-tidy] Fix crash in C language in readability-non-const-parameter (#100461)

Fix crash that happen when redeclaration got
different number of parameters than definition.

Fixes #100340


  Commit: 24a18aafa337b70a5a6c30f077bddc64e8677b48
      https://github.com/llvm/llvm-project/commit/24a18aafa337b70a5a6c30f077bddc64e8677b48
  Author: Ivan Kosarev <ivan.kosarev at amd.com>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUInstPrinter.cpp
    M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUInstPrinter.h
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.update.dpp.ll

  Log Message:
  -----------
  [AMDGPU] Simplify printing row/bank_mask modifiers. (#100575)

And fix a codegen test to use mask values that fit their encoding
fields.

Part of <https://github.com/llvm/llvm-project/issues/62629>.


  Commit: 98e733eaf2af1a5c1d9392e279d21182ffdf560d
      https://github.com/llvm/llvm-project/commit/98e733eaf2af1a5c1d9392e279d21182ffdf560d
  Author: Tom Eccles <tom.eccles at arm.com>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    M flang/include/flang/Lower/ConvertVariable.h
    M flang/lib/Lower/ConvertVariable.cpp
    M flang/lib/Lower/OpenMP/DataSharingProcessor.cpp
    A flang/test/Lower/OpenMP/private-derived-type.f90

  Log Message:
  -----------
  [flang][OpenMP] Initialize privatised derived type variables (#100417)

Fixes #91928


  Commit: abacc5220e228012b0b86ca2ed540ef1a715f1ee
      https://github.com/llvm/llvm-project/commit/abacc5220e228012b0b86ca2ed540ef1a715f1ee
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

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

  Log Message:
  -----------
  Fix unused variable warning. NFC.


  Commit: 9398cc2ec57721a57af98f6206c816038375ac6e
      https://github.com/llvm/llvm-project/commit/9398cc2ec57721a57af98f6206c816038375ac6e
  Author: Acim Maravic <Acim.Maravic at Syrmia.com>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/BUFInstructions.td
    M llvm/lib/Target/AMDGPU/DSInstructions.td
    M llvm/lib/Target/AMDGPU/FLATInstructions.td
    M llvm/lib/Target/AMDGPU/SMInstructions.td
    M llvm/lib/Target/AMDGPU/SOPInstructions.td
    M llvm/lib/Target/AMDGPU/VOP1Instructions.td
    M llvm/lib/Target/AMDGPU/VOP2Instructions.td
    M llvm/lib/Target/AMDGPU/VOPCInstructions.td
    M llvm/lib/Target/AMDGPU/VOPInstructions.td

  Log Message:
  -----------
  [LLVM][AMDGPU] Copy isConvergent from Pseudo to Real instructions (#99658)

This patch copies the flag isConvergent from pseudo instructions to the
corresponding real instructions, so that isConvergent flag is also
defined for real instructions.

Flags are not required by the compiler, but for consistency it would be
nice to have them.

Co-authored-by: Acim Maravic <Acim.Maravic at amd.com>


  Commit: d8b672dac9f8945ab35cffaa4e196e3d3e61da1f
      https://github.com/llvm/llvm-project/commit/d8b672dac9f8945ab35cffaa4e196e3d3e61da1f
  Author: jeanPerier <jperier at nvidia.com>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    M flang/include/flang/Optimizer/CodeGen/CGOps.td
    M flang/include/flang/Optimizer/Dialect/FIROps.td
    M flang/lib/Optimizer/CodeGen/CodeGen.cpp

  Log Message:
  -----------
  [flang][NFC] rename fircg op operand index accessors (#100584)

fircg operations have xxxOffset members to give the operand index of
operand xxx. This is a bit weird when looking at usage (e.g.
`arrayCoor.shiftOffset` reads like it is shifting some offset). Rename
them to getXxxOperandIndex.


  Commit: 3295d377f37a60597321f502d164b5d6b1948e28
      https://github.com/llvm/llvm-project/commit/3295d377f37a60597321f502d164b5d6b1948e28
  Author: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    M clang/lib/Parse/ParseExpr.cpp

  Log Message:
  -----------
  [clang] Remove `__is_layout_compatible` from revertible type traits list (#100572)

`__is_layout_compatible` was added in Clang 19 (#81506), and at that
time it wasn't entirely clear whether it should be a revertible type
trait or not. We decided to follow the example of other type traits.
Since then #95969 happened, and now we know that we don't want new
revertible type traits.

This patch removes `__is_layout_compatible` from revertible type traits
list, and leaves a comment what revertible type traits are, and that new
type traits should not be added there.

The intention is to also cherry-pick this to 19 branch.


  Commit: 817cd726454f01e990cd84e5e1d339b120b5ebaa
      https://github.com/llvm/llvm-project/commit/817cd726454f01e990cd84e5e1d339b120b5ebaa
  Author: Mirko Brkušanin <Mirko.Brkusanin at amd.com>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIFoldOperands.cpp
    A llvm/test/CodeGen/AMDGPU/si-fold-scalar-clamp.mir

  Log Message:
  -----------
  [AMDGPU] Fix folding clamp into pseudo scalar instructions (#100568)

Clamp is canonically a v_max* instruction with a VGPR dst. Folding clamp
into a pseudo scalar instruction can cause issues due to a change in
regbank. We fix this with a copy.


  Commit: e90d552c77428b93b435eaafa81e396cdaf60694
      https://github.com/llvm/llvm-project/commit/e90d552c77428b93b435eaafa81e396cdaf60694
  Author: Mikhail R. Gadelha <mikhail at igalia.com>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    M libc/docs/date_and_time.rst
    M libc/docs/math/index.rst

  Log Message:
  -----------
  [libc][NFC] Update riscv documentation (#100578)

This adds linux-riscv32 to the documentation and fixes riscv's
entrypoint broken link.


  Commit: 1db7d2ae226c96e0243309e1688c6e0cfb9236bd
      https://github.com/llvm/llvm-project/commit/1db7d2ae226c96e0243309e1688c6e0cfb9236bd
  Author: Noah Goldstein <goldstein.w.n at gmail.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M llvm/include/llvm/Object/ELF.h

  Log Message:
  -----------
  [ELF] Add missing `static` decl on several helpers; NFC


  Commit: 342328db6b2a69cf59c01a6115b1baab925c0736
      https://github.com/llvm/llvm-project/commit/342328db6b2a69cf59c01a6115b1baab925c0736
  Author: Zahira Ammarguellat <zahira.ammarguellat at intel.com>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    M clang/lib/Sema/SemaChecking.cpp
    M clang/test/Headers/float.c
    M clang/test/Sema/warn-infinity-nan-disabled-lnx.cpp

  Log Message:
  -----------
  [CLANG] Emit warning in finite math mode when INF and NAN are used. (#99672)

In finite math mode when special math builtins `__builtin_inf` and
`__builtin_nan` are used a warning is emitted when the builtin is
expanded and at call point.
This warning at call point was missing for` __builtin_inf` and this
patch fixes the issue
(https://github.com/llvm/llvm-project/issues/98018).


  Commit: 3ce6f68ee736e2e6afaa2fe5fcde71f26b21d0cf
      https://github.com/llvm/llvm-project/commit/3ce6f68ee736e2e6afaa2fe5fcde71f26b21d0cf
  Author: Mark de Wever <koraq at xs4all.nl>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    M libcxx/docs/FeatureTestMacroTable.rst
    M libcxx/docs/ReleaseNotes/19.rst
    M libcxx/docs/Status/Cxx20.rst
    M libcxx/docs/Status/Cxx20Papers.csv
    M libcxx/docs/Status/SpaceshipPapers.csv
    M libcxx/include/version
    M libcxx/test/std/language.support/support.limits/support.limits.general/compare.version.compile.pass.cpp
    M libcxx/test/std/language.support/support.limits/support.limits.general/version.version.compile.pass.cpp
    M libcxx/utils/generate_feature_test_macro_components.py

  Log Message:
  -----------
  [libc++][spaceship] Marks P1614 as complete. (#99375)

Implements parts of:
- P1902R1 Missing feature-test macros 2017-2019

Completes:
- P1614R2 The Mothership has Landed

Fixes #100018


  Commit: 06134540126e3b82b66e82d577ac194584e76153
      https://github.com/llvm/llvm-project/commit/06134540126e3b82b66e82d577ac194584e76153
  Author: Akash Banerjee <akash.banerjee at amd.com>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

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

  Log Message:
  -----------
  [OpenMP] Fix OpenMPIRBuilder generating incorrect duplicate SrcLocInfo (#100364)

This should further fix some of the incorrect debug info being generated
related to #97458


  Commit: f67fa3be4db68afc08c7f3d9523f1533fa5687b7
      https://github.com/llvm/llvm-project/commit/f67fa3be4db68afc08c7f3d9523f1533fa5687b7
  Author: David Green <david.green at arm.com>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
    M llvm/test/Analysis/CostModel/AArch64/shuffle-other.ll
    M llvm/test/Transforms/VectorCombine/AArch64/select-shuffle.ll

  Log Message:
  -----------
  [AArch64] Remove special-case inserted shuffle cost.

This special case tried to measure if the shuffle vector will be multiple
inserts into an existing vector, with one of the lanes already in-place. If so
it reduces the cost by 1 to to represent it will can insert n-1 vector lanes.
This isn't always true though as the original vector may need to be moved to a
new value to start inserting new values into it, if other values from the
original are still needed.

This didn't effect performance much when I tried it, but should hopefully start
to address a regression we see from differences in SLP vectorization lane
orders.


  Commit: 7304936479a7eb61adc9edcaf6ce56e4792590ad
      https://github.com/llvm/llvm-project/commit/7304936479a7eb61adc9edcaf6ce56e4792590ad
  Author: Timm Bäder <tbaeder at redhat.com>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    M clang/lib/AST/Interp/ByteCodeEmitter.cpp
    M clang/lib/AST/Interp/InterpBuiltin.cpp
    A clang/test/AST/Interp/builtin-constant-p.cpp

  Log Message:
  -----------
  [clang][Interp] Add preliminary __builtin_constant_p implementation

This is not perfect or complete, but it helps us pass the simple tests
and those tests where __builtin_constant_p is not the main subject of
testing.


  Commit: 3eaf9f7237b088e9382739808d4f723b2c11dd8c
      https://github.com/llvm/llvm-project/commit/3eaf9f7237b088e9382739808d4f723b2c11dd8c
  Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

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

  Log Message:
  -----------
  LAA: fix style after cursory reading (NFC) (#100447)


  Commit: 99bb9a719cec9513e72ad275c1c0302b76b6c408
      https://github.com/llvm/llvm-project/commit/99bb9a719cec9513e72ad275c1c0302b76b6c408
  Author: Jon Roelofs <jonathan_roelofs at apple.com>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    M compiler-rt/test/profile/ContinuousSyncMode/darwin-proof-of-concept.c

  Log Message:
  -----------
  [compiler-rt][Profile][Darwin] Fix a test that expected an alignment … (#100469)

…greater than the maximum for a segment

This test was failing with:
```
--
Exit Code: 1

Command Output (stderr):
--
ld: warning: reducing alignment of section __DATA,__pcnts from 0x4000 to 0x1000 because it exceeds segment maximum alignment ld: warning: reducing alignment of section __DATA,__pdata from 0x4000 to 0x1000 because it exceeds segment maximum alignment __pdata not ordered after __pcnts.

--
```


  Commit: c194bc77a21d68dd321588c9d726ef2d6c556a30
      https://github.com/llvm/llvm-project/commit/c194bc77a21d68dd321588c9d726ef2d6c556a30
  Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/ArmSME/Transforms/Passes.td
    M mlir/include/mlir/Dialect/Vector/Utils/VectorUtils.h
    M mlir/lib/Dialect/ArmSME/Transforms/CMakeLists.txt
    M mlir/lib/Dialect/ArmSME/Transforms/VectorLegalization.cpp
    M mlir/test/Dialect/ArmSME/vector-legalization.mlir

  Log Message:
  -----------
  [mlir][ArmSME] Add rewrite to handle unsupported SVE transposes via SME/ZA (#98620)

This adds a workaround rewrite that allows stores of unsupported SVE
transposes such as:

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

To use SME tiles, which are possible to lower (when SME is available):

```mlir
// Insert vector<2x[4]xf32> into an SME tile:
%0 = arm_sme.get_tile : vector<[4]x[4]xf32>
%1 = vector.extract %vec[0] : vector<[4]xf32> from vector<2x[4]xf32>
%2 = vector.insert %1, %0 [0] : vector<[4]xf32> into vector<[4]x[4]xf32>
%3 = vector.extract %vec[1] : vector<[4]xf32> from vector<2x[4]xf32>
%4 = vector.insert %3, %2 [1] : vector<[4]xf32> into vector<[4]x[4]xf32>
// Store the tile with a transpose + mask:
%c4_vscale = arith.muli %vscale, %c4 : index
%mask = vector.create_mask %c4_vscale, %c2 : vector<[4]x[4]xi1>
vector.transfer_write %4, %arg1[%arg2, %arg3], %mask
   {permutation_map = affine_map<(d0, d1) -> (d1, d0)>}
   : vector<[4]x[4]xf32>, memref<?x?xf32>
```


  Commit: a55df237375e98cfc2520d5eb1a23b302ef02ba0
      https://github.com/llvm/llvm-project/commit/a55df237375e98cfc2520d5eb1a23b302ef02ba0
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    M libcxx/include/locale

  Log Message:
  -----------
  [libc++] Add missing xlocale.h include on Apple and FreeBSD (#99689)

The `<locale>` header uses `strtoll_l` and friends which are defined in
`<xlocale.h>` on these platforms. While this works via transitive
includes when modules are disabled, this doesn't work anymore if the
platforms are modularized properly.


  Commit: db8c84fc7a75dd60bcfff7160b51e1a55e7e0f73
      https://github.com/llvm/llvm-project/commit/db8c84fc7a75dd60bcfff7160b51e1a55e7e0f73
  Author: Thorsten Schütt <schuett at gmail.com>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/GlobalISel/CombinerHelper.h
    M llvm/include/llvm/CodeGen/GlobalISel/GenericMachineInstrs.h
    M llvm/include/llvm/Target/GlobalISel/Combine.td
    M llvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp
    M llvm/lib/CodeGen/GlobalISel/CombinerHelperCasts.cpp
    A llvm/test/CodeGen/AArch64/GlobalISel/combine-cast.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/ashr.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/lshr.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/shl.ll
    M llvm/test/CodeGen/AMDGPU/ctlz.ll
    M llvm/test/CodeGen/AMDGPU/ctlz_zero_undef.ll
    M llvm/test/CodeGen/AMDGPU/cttz.ll

  Log Message:
  -----------
  [GlobalIsel] Push cast through select. (#100539)


  Commit: edf9756e2e658ac8faa8635e15acb428d5b103f6
      https://github.com/llvm/llvm-project/commit/edf9756e2e658ac8faa8635e15acb428d5b103f6
  Author: Nico Weber <thakis at chromium.org>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    M llvm/utils/gn/secondary/bolt/lib/RuntimeLibs/BUILD.gn
    M llvm/utils/gn/secondary/bolt/lib/Utils/BUILD.gn
    M llvm/utils/gn/secondary/bolt/test/BUILD.gn

  Log Message:
  -----------
  [gn] port abc2eae6829 (bolt standalone)


  Commit: 08b3556c2ff8948932bcbbc77781fe41388e4e63
      https://github.com/llvm/llvm-project/commit/08b3556c2ff8948932bcbbc77781fe41388e4e63
  Author: Nico Weber <thakis at chromium.org>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    M llvm/utils/gn/secondary/lldb/source/Interpreter/BUILD.gn
    A llvm/utils/gn/secondary/lldb/source/Interpreter/Interfaces/BUILD.gn

  Log Message:
  -----------
  [gn] port enough of 2914a4b88837 (lldb Interfaces)

gn's lldb does not have the Python plugin, so most of the changes
from 2914a4b88837 aren't necessary here.


  Commit: 319d29d21ea9f04cd8530c77b558796bf5db0197
      https://github.com/llvm/llvm-project/commit/319d29d21ea9f04cd8530c77b558796bf5db0197
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

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

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

This patch fixes:

  clang/lib/Sema/SemaChecking.cpp:8220:3: error: default label in
  switch which covers all enumeration values
  [-Werror,-Wcovered-switch-default]


  Commit: e31794f99d72dd764c4bc5c5583a0a4c89df22c3
      https://github.com/llvm/llvm-project/commit/e31794f99d72dd764c4bc5c5583a0a4c89df22c3
  Author: Hari Limaye <hari.limaye at arm.com>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    M llvm/lib/CodeGen/StackFrameLayoutAnalysisPass.cpp
    M llvm/test/CodeGen/AArch64/sve-stack-frame-layout.ll
    M llvm/test/CodeGen/X86/stack-frame-layout-remarks.ll

  Log Message:
  -----------
  [StackFrameLayoutAnalysis] Support more SlotTypes (#100562)

Add new SlotTypes to StackFrameLayoutAnalysis to disambiguate Fixed and
Variable-Sized stack slots from Variable slots. As Offsets are
unreliable for VLA-area objects, sort these to the end of the list -
using the Frame Index to ensure a deterministic order when Offsets are
equal.


  Commit: 88fb56ebf25de6288510364a4be3fbd7ae9a7246
      https://github.com/llvm/llvm-project/commit/88fb56ebf25de6288510364a4be3fbd7ae9a7246
  Author: Mikhail R. Gadelha <mikhail at igalia.com>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    M libc/docs/date_and_time.rst

  Log Message:
  -----------
  [libc] Fix broken table introduced by PR #100578


  Commit: b365dbbd8dcc8cd3732995dd95b380f77b3337e3
      https://github.com/llvm/llvm-project/commit/b365dbbd8dcc8cd3732995dd95b380f77b3337e3
  Author: Justin Bogner <mail at justinbogner.com>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    A llvm/include/llvm/Analysis/DXILResource.h
    R llvm/include/llvm/Transforms/Utils/DXILResource.h
    M llvm/lib/Analysis/CMakeLists.txt
    A llvm/lib/Analysis/DXILResource.cpp
    M llvm/lib/Transforms/Utils/CMakeLists.txt
    R llvm/lib/Transforms/Utils/DXILResource.cpp
    M llvm/unittests/Analysis/CMakeLists.txt
    A llvm/unittests/Analysis/DXILResourceTest.cpp
    M llvm/unittests/Transforms/Utils/CMakeLists.txt
    R llvm/unittests/Transforms/Utils/DXILResourceTest.cpp

  Log Message:
  -----------
  [DXIL][Analysis] Move dxil::ResourceInfo to the Analysis library. NFC

I had put this in Transforms/Utils, but that doesn't actually make
sense if we want to populate these structures via an analysis pass.

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


  Commit: 3c210740649a538d2fc2432395f2ef41c56dc8b6
      https://github.com/llvm/llvm-project/commit/3c210740649a538d2fc2432395f2ef41c56dc8b6
  Author: Daniel Thornburgh <dthorn at google.com>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    M libc/src/__support/block.h
    M libc/src/__support/freelist_heap.h
    M libc/test/src/__support/block_test.cpp

  Log Message:
  -----------
  [NFC][libc][malloc] Refactor Block (#100445)

This decreases the surface area of the block implementation in
preparation for deeper changes to its implementation.

See #98096 

- Remove dead member functions.
- Remove last() check from next(), as described in its comment.
- Rework object lifetimes such that only block headers are actually
considered live. This simplifies their implementation.
- The allocated storage becomes live at the outer call to malloc-family
functions via a special case in the C++ standard.
- Add asserts for flag properties required by the implementation.
- Remove static from member functions that don't invalidate the block.


  Commit: 792b673d36a86ab9d45ed3b259a3fc7020826b76
      https://github.com/llvm/llvm-project/commit/792b673d36a86ab9d45ed3b259a3fc7020826b76
  Author: Vladislav Dzhidzhoev <vdzhidzhoev at accesssoftek.com>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    M lldb/test/API/assert_messages_test/TestAssertMessages.py

  Log Message:
  -----------
  [lldb][test] Mark TestAssertMessages.py as passing remotely on Linux target. (#100586)

It has been markad as XFAIL here
de2ddc8f3146bd87152ea86b533541039541efe1, but I haven't found the reason
for that, and apparently, it passes against the Linux target.


  Commit: 82c21f085a10e64fc5c21683224714be03e8506f
      https://github.com/llvm/llvm-project/commit/82c21f085a10e64fc5c21683224714be03e8506f
  Author: Justin Bogner <mail at justinbogner.com>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

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

  Log Message:
  -----------
  [DXIL][Analysis] Replace #include with forward declaration. NFC

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


  Commit: 4f8050806e14d9f7791bfaa33681cacb1ac02549
      https://github.com/llvm/llvm-project/commit/4f8050806e14d9f7791bfaa33681cacb1ac02549
  Author: Scott Todd <scott.todd0 at gmail.com>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    M lld/MachO/BPSectionOrderer.cpp

  Log Message:
  -----------
  [lld] Add explicit conversion for enum to Twine. (#100627)

This fixes `error: ambiguous conversion for functional-style cast from
'lld::macho::InputSection::Kind' to 'llvm::Twine'`, observed when
building with clang-9 and reported here:
https://github.com/llvm/llvm-project/pull/96268#discussion_r1691909931.


  Commit: 2b162286eddcf0624b2a7731ea1b6d52bb332e8a
      https://github.com/llvm/llvm-project/commit/2b162286eddcf0624b2a7731ea1b6d52bb332e8a
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    M clang/lib/Driver/ToolChains/Cuda.cpp
    M clang/test/Driver/cuda-cross-compiling.c

  Log Message:
  -----------
  [NVPTX] Correctly forward the PTX feature to the nvlink wrapper (#100607)

Summary:
This is necessary for LTO when the user specifies it or has a CUDA
version that supports a sufficiently high version. Previously it would
default.

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


  Commit: 0307dd0d5dea6fbc3b218850e7061cd40a80fc58
      https://github.com/llvm/llvm-project/commit/0307dd0d5dea6fbc3b218850e7061cd40a80fc58
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    M libcxx/test/CMakeLists.txt

  Log Message:
  -----------
  [libc++] Remove unnecessary check for LIBCXX_INCLUDE_TESTS (#100573)

This whole CMakeLists.txt is only included from the parent directory if
LIBCXX_INCLUDE_TESTS is true.


  Commit: 52b6b1eb976341956c9c75f6572c37d445fcb332
      https://github.com/llvm/llvm-project/commit/52b6b1eb976341956c9c75f6572c37d445fcb332
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    M libcxx/CMakeLists.txt
    M libcxx/src/CMakeLists.txt
    M libcxx/test/CMakeLists.txt

  Log Message:
  -----------
  [libc++] Remove unmaintained LIBCXX_CONFIGURE_IDE (#100574)

The premise of LIBCXX_CONFIGURE_IDE is nice, however in practice this
setting has not been maintained and as a result it basically doesn't
work properly. For example, it doesn't take into account the headers we
generate, and its handling of the tests is too naive for it to be really
helpful.

This patch removes the setting in order to simplify the CMake setup a
bit, but most importantly to remove unnecessary interactions between our
main CMake build of the library and the test suite.


  Commit: 6618eca5f506ca1bde3c7cf43a91dd5121d12e8b
      https://github.com/llvm/llvm-project/commit/6618eca5f506ca1bde3c7cf43a91dd5121d12e8b
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

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

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


  Commit: cc4f98979b079b517edd8a71f56a8975f436e63d
      https://github.com/llvm/llvm-project/commit/cc4f98979b079b517edd8a71f56a8975f436e63d
  Author: Anton Korobeynikov <anton at korobeynikov.info>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    M compiler-rt/lib/sanitizer_common/sanitizer_ptrauth.h

  Log Message:
  -----------
  Normalize ptrauth handling in sanitizer runtime (#100483)

1. Include `ptrauth.h` if `ptrauth_intrinsics` language feature is specified (per ptrauth spec, this is what enables `ptrauh.h` usage and functions like `ptrauth_strip`)
 2. For PAC-RET fallback implement two changes:
    1. Switch to macro, so we can ignore key argument
    2. Ensure the unsigned value is erased from LR, so the possibility of gadget reuse is reduced.

Fixes #100467


  Commit: 81ce796095c8e2ededa5d9df1c963cf08a75a6f1
      https://github.com/llvm/llvm-project/commit/81ce796095c8e2ededa5d9df1c963cf08a75a6f1
  Author: OverMighty <its.overmighty at gmail.com>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    M libc/cmake/modules/CheckCompilerFeatures.cmake
    M libc/cmake/modules/LLVMLibCFlagRules.cmake
    M libc/config/gpu/entrypoints.txt
    M libc/src/__support/macros/properties/cpu_features.h
    M libc/src/math/generic/CMakeLists.txt
    M libc/src/math/generic/ceilf16.cpp
    M libc/src/math/generic/floorf16.cpp
    M libc/src/math/generic/rintf16.cpp
    M libc/src/math/generic/roundevenf16.cpp
    M libc/src/math/generic/roundf16.cpp
    M libc/src/math/generic/truncf16.cpp

  Log Message:
  -----------
  [libc][math][c23] Enable C23 _Float16 math functions on GPUs (#99248)


  Commit: 56fd2472d887392855ad85c53df5782a2c3f8ddb
      https://github.com/llvm/llvm-project/commit/56fd2472d887392855ad85c53df5782a2c3f8ddb
  Author: Daniil Kovalev <dkovalev at accesssoftek.com>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64InstrInfo.cpp
    M llvm/lib/Target/AArch64/AArch64MachineFunctionInfo.cpp
    M llvm/lib/Target/AArch64/AArch64PointerAuth.cpp
    M llvm/lib/Target/AArch64/AArch64Subtarget.cpp
    M llvm/lib/Target/AArch64/AArch64Subtarget.h
    A llvm/test/CodeGen/AArch64/ptrauth-ret-trap.ll
    A llvm/test/CodeGen/AArch64/ptrauth-ret.ll

  Log Message:
  -----------
  [PAC] Sign LR with B key for non-leaf functions with ptrauth-returns attr (#100552)

For pauthtest ABI, there is a bunch of ptrauth-* options, including
ptrauth-returns. Use "ptrauth-returns" function attribute to indicate
need for LR signing with B key for non-leaf function to avoid using
"sign-return-address" and "sign-return-address-key" which were
originally designed for pac-ret.

Co-authored-by: Ahmed Bougacha <ahmed at bougacha.org>
Co-authored-by: Anatoly Trosinenko <atrosinenko at accesssoftek.com>


  Commit: ea202f9f2ec0cb19fa34c373ad1929e1aedcaf8c
      https://github.com/llvm/llvm-project/commit/ea202f9f2ec0cb19fa34c373ad1929e1aedcaf8c
  Author: Philip Reames <preames at rivosinc.com>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    M llvm/test/Transforms/LoopVectorize/RISCV/short-trip-count.ll

  Log Message:
  -----------
  [LV,RISCV] Regenerate a test to reduce spurious deltas in upcoming change


  Commit: 59e91d4c5094641ffa0763c17599b1d0d7c6fbb0
      https://github.com/llvm/llvm-project/commit/59e91d4c5094641ffa0763c17599b1d0d7c6fbb0
  Author: Justin Bogner <mail at justinbogner.com>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    M llvm/include/llvm/Analysis/DXILResource.h
    M llvm/lib/Analysis/DXILResource.cpp
    M llvm/unittests/Analysis/DXILResourceTest.cpp

  Log Message:
  -----------
  [DXIL][Analysis] Make the DXILResource binding optional. NFC

This makes the binding structure in a DXILResource default to empty
and need a separate call to set up, and also moves the unique ID into
it since bindings are the only place where those are actually used.

This will put us in a better position when dealing with resource
handles in libraries.

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


  Commit: 8470a23c488ffa0fe3a0ed6fe776b9bb6336897b
      https://github.com/llvm/llvm-project/commit/8470a23c488ffa0fe3a0ed6fe776b9bb6336897b
  Author: nicebert <110385235+nicebert at users.noreply.github.com>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    M clang/include/clang/Basic/OpenMPKinds.def
    M clang/lib/Parse/ParseOpenMP.cpp
    M clang/lib/Sema/SemaOpenMP.cpp
    M clang/test/OpenMP/target_defaultmap_messages.cpp
    M clang/test/OpenMP/target_parallel_defaultmap_messages.cpp
    M clang/test/OpenMP/target_parallel_for_defaultmap_messages.cpp
    M clang/test/OpenMP/target_parallel_for_simd_defaultmap_messages.cpp
    M clang/test/OpenMP/target_simd_defaultmap_messages.cpp
    M clang/test/OpenMP/target_teams_defaultmap_messages.cpp
    M clang/test/OpenMP/target_teams_distribute_defaultmap_messages.cpp
    M clang/test/OpenMP/target_teams_distribute_parallel_for_defaultmap_messages.cpp
    M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_defaultmap_messages.cpp

  Log Message:
  -----------
  [OpenMP] Defaultmap: fixes scalar issue, adds all variable category (#99315)

Fixes issue with defaultmap where scalar isn't handled correctly for
present modifier. Adds all variable cateogry introduced in OpenMP 5.2
and alters existing tests for error messages to check OpenMP 5.2
defaultmap messages.


  Commit: a737b8704c031310460d492cef90eee5054cabd7
      https://github.com/llvm/llvm-project/commit/a737b8704c031310460d492cef90eee5054cabd7
  Author: Mircea Trofin <mtrofin at google.com>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    M llvm/test/CMakeLists.txt
    M llvm/test/lit.cfg.py
    A llvm/test/tools/llvm-ctxprof-util/Inputs/bad.json
    A llvm/test/tools/llvm-ctxprof-util/Inputs/empty.json
    A llvm/test/tools/llvm-ctxprof-util/Inputs/invalid-bad-subctx.json
    A llvm/test/tools/llvm-ctxprof-util/Inputs/invalid-no-counters.json
    A llvm/test/tools/llvm-ctxprof-util/Inputs/invalid-no-ctx.json
    A llvm/test/tools/llvm-ctxprof-util/Inputs/invalid-no-vector.json
    A llvm/test/tools/llvm-ctxprof-util/Inputs/valid.json
    A llvm/test/tools/llvm-ctxprof-util/llvm-ctxprof-util-negative.test
    A llvm/test/tools/llvm-ctxprof-util/llvm-ctxprof-util.test
    M llvm/tools/CMakeLists.txt
    A llvm/tools/llvm-ctxprof-util/CMakeLists.txt
    A llvm/tools/llvm-ctxprof-util/llvm-ctxprof-util.cpp

  Log Message:
  -----------
  [ctx_prof] test tool: generate ctxprof bistream from json (#100379)

This is a tool to simplify testing. It generates a valid contextual profile file from a json representation.

The tool is authored to allow for future evolution, e.g. if we want to support profile merging or other tasks, not necessarily scoped to testing.


  Commit: 684a5a30e1d23805b72988d3045092ed5d115c27
      https://github.com/llvm/llvm-project/commit/684a5a30e1d23805b72988d3045092ed5d115c27
  Author: Matthias Springer <me at m-sp.org>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    M mlir/lib/Transforms/Utils/DialectConversion.cpp
    M mlir/test/Transforms/test-legalizer.mlir
    M mlir/test/lib/Dialect/Test/TestPatterns.cpp

  Log Message:
  -----------
  [mlir][Transforms] Dialect conversion: fix crash when converting detached region (#100633)

This commit fixes a crash in the dialect conversion when applying a
signature conversion to a block inside of a detached region.

This fixes an issue reported in
https://github.com/llvm/llvm-project/pull/97213/files/4114d5be87596e11d86706a338248ebf05cf7150#r1691809730.


  Commit: 6d163613621faec5050f49b9cb9da15931359090
      https://github.com/llvm/llvm-project/commit/6d163613621faec5050f49b9cb9da15931359090
  Author: Philip Reames <preames at rivosinc.com>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

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

  Log Message:
  -----------
  [SDAG] Manual jumpthread in findMemType for style clarity [NFC]


  Commit: 888ae9066da9c9758c03e839be6cefb3246a9b1c
      https://github.com/llvm/llvm-project/commit/888ae9066da9c9758c03e839be6cefb3246a9b1c
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

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

  Log Message:
  -----------
  [libc] Fix leftoever debug in 'f16fma' function (#100638)

Summary:
This caused issues on NVPTX


  Commit: 31d289440b30365e0263fbeb8ce919fb4f35b636
      https://github.com/llvm/llvm-project/commit/31d289440b30365e0263fbeb8ce919fb4f35b636
  Author: Mircea Trofin <mtrofin at google.com>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    M llvm/test/tools/llvm-ctxprof-util/llvm-ctxprof-util-negative.test
    M llvm/test/tools/llvm-ctxprof-util/llvm-ctxprof-util.test

  Log Message:
  -----------
  Restrict llvm-ctxprof-util tests to linux (#100650)

Follow up from PR #100379, this is to avoid output formatting
differences.


  Commit: 5909979869edca359bcbca74042c2939d900680e
      https://github.com/llvm/llvm-project/commit/5909979869edca359bcbca74042c2939d900680e
  Author: Tristan Ross <tristan.ross at midstall.com>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    M bolt/runtime/CMakeLists.txt

  Log Message:
  -----------
  [BOLT] Fix archive output directory for standalone on Mac (#100643)

CC @gulfemsavrun

Fixes a line which wasn't changed in #97130


  Commit: c1d1a752cea105dba1aa999bc90feb5faa974bec
      https://github.com/llvm/llvm-project/commit/c1d1a752cea105dba1aa999bc90feb5faa974bec
  Author: Med Ismail Bennani <ismail at bennani.ma>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedPythonInterface.h
    M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedThreadPythonInterface.h
    M lldb/source/Plugins/ScriptInterpreter/Python/PythonDataObjects.h
    M lldb/source/Plugins/ScriptInterpreter/Python/SWIGPythonBridge.h
    M lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.h
    M lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPythonImpl.h

  Log Message:
  -----------
  [lldb/Plugins] Fix build failure on windows following 2914a4b88837

This patch tries to fix the following build failure on windows:

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

This started happening following 2914a4b88837, and it seems to be caused
by some special `#include` ordering for the lldb-python header on Windows.

Signed-off-by: Med Ismail Bennani <ismail at bennani.ma>


  Commit: a3092152ac486f440376c732a5503b5c60d13183
      https://github.com/llvm/llvm-project/commit/a3092152ac486f440376c732a5503b5c60d13183
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/lib/Transforms/Vectorize/VPlan.h
    M llvm/test/Transforms/LoopVectorize/X86/pr39160.ll
    M llvm/test/Transforms/LoopVectorize/version-stride-with-integer-casts.ll

  Log Message:
  -----------
  [VPlan] Don't create live-outs for induction increments.

Follow up to fc9cd3272b5 to also skip creating live-outs for IV
increments, as those are also generated independent of VPlan for now.


  Commit: 0c10bdc05f0f90ae173f29854f03796e92ed76e4
      https://github.com/llvm/llvm-project/commit/0c10bdc05f0f90ae173f29854f03796e92ed76e4
  Author: Daniel Thornburgh <dthorn at google.com>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    M libc/config/baremetal/config.json
    M libc/config/config.json
    M libc/docs/configure.rst
    M libc/src/__support/freelist_heap.h
    M libc/src/stdlib/CMakeLists.txt
    M libc/src/stdlib/freelist_malloc.cpp
    M libc/test/src/__support/CMakeLists.txt
    A libc/test/src/__support/fake_heap.s
    M libc/test/src/__support/freelist_heap_test.cpp
    M libc/test/src/__support/freelist_malloc_test.cpp

  Log Message:
  -----------
  [libc] Lazily initialize freelist malloc using symbols (#99254)

This requires the user to set the upper bounds of the heap by defining
the symbol `__libc_heap_limit`. The heap begins at `_end` and ends
`__libc_heap_limit` bytes afterwards. This prevents a completely unused
heap from requiring any space, and it prevents the heap from being
zeroed at initialization time as part of BSS. It also allows users to
customize the available heap location without recompiling libc.
    
I'd think this should eventually be replaced with an implemenation based
on a morecore() library. This would allow the same implementation to use
sbrk() on POSIX, `_end` and `__libc_heap_limit` on embedded, and a
buffer in tests. It would also provide better "wilderness" behavior that
tends to decrease heap fragementation (see Wilson et al.)

See #98096


  Commit: cb7d4a187a3ec1814f42612997e94acd460ddabf
      https://github.com/llvm/llvm-project/commit/cb7d4a187a3ec1814f42612997e94acd460ddabf
  Author: Zhaoshi Zheng <zhaoshiz at quicinc.com>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    M mlir/test/Dialect/Vector/vector-multi-reduction-lowering.mlir

  Log Message:
  -----------
  [MLIR][Vector] Add a test of <2x[4]xf32> type on lowering multireduction (#100451)

reduction on scalable dim:
vector.mask %C { vector.multi_reduction <add>, %A, %B [1] : vector<2x[4]xf32> to vector<2xf32> } : vector<2x[4]xi1> -> vector<2xf32>


  Commit: 01a489133e5de203c9b20981ad24a94b73e51aea
      https://github.com/llvm/llvm-project/commit/01a489133e5de203c9b20981ad24a94b73e51aea
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    A llvm/test/Transforms/SLPVectorizer/AMDGPU/min_max.ll

  Log Message:
  -----------
  AMDGPU: Add baseline test for vectorize of integer min/max (#100513)


  Commit: e0c14c05a3e3178164ca7368516c080b823ef484
      https://github.com/llvm/llvm-project/commit/e0c14c05a3e3178164ca7368516c080b823ef484
  Author: David Green <david.green at arm.com>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    A llvm/test/Transforms/PhaseOrdering/AArch64/slpordering.ll

  Log Message:
  -----------
  [AArch64][PhaseOrdering] Add a SLP lane-ordering phase-ordering test. NFC


  Commit: 9720690f4e6b16f03b76bddaf2c49a2352503254
      https://github.com/llvm/llvm-project/commit/9720690f4e6b16f03b76bddaf2c49a2352503254
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    A llvm/test/Analysis/CostModel/AMDGPU/abs.ll

  Log Message:
  -----------
  AMDGPU: Add baseline test for cost of abs intrinsics (#100522)


  Commit: 4aa4ee909029cd7cd85d67b41d488a6edb802dce
      https://github.com/llvm/llvm-project/commit/4aa4ee909029cd7cd85d67b41d488a6edb802dce
  Author: Alex Langford <alangford at apple.com>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    M llvm/include/llvm/Support/Allocator.h
    M llvm/unittests/Support/AllocatorTest.cpp

  Log Message:
  -----------
  [Support] Add SpecificBumpPtrAllocator::identifyObject (#100475)

This already exists in BumpPtrAllocatorImpl, but I would like to use it
from SpecificBumpPtrAllocator.

I also noticed there was no test for identifyObject so I added one.


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

  Changed paths:
    M llvm/include/llvm/ADT/DenseMap.h

  Log Message:
  -----------
  [DenseMap] Optimize find/erase

`LookupBucketFor` is used for `find`, `insert`, `erase`, and their
variants. While tombstone comparison isn't needed by `find`/`erase`,
`LookupBucketFor` calls `getTombstoneKey` regardless, which might have
an opaque implementation or just not optimized out, leading to
unnecessary overhead for `find` and `erase`.

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


  Commit: 5b4e5f8ac6c6f7e25f7c87a26f2d2eaa0ebba8e3
      https://github.com/llvm/llvm-project/commit/5b4e5f8ac6c6f7e25f7c87a26f2d2eaa0ebba8e3
  Author: Pranav Bhandarkar <pranav.bhandarkar at amd.com>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

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

  Log Message:
  -----------
  [OpenMPIRBuilder][Clang][NFC] - Combine `emitOffloadingArrays` and `emitOffloadingArraysArgument` in OpenMPIRBuilder (#97088)

This patch introduces a new interface in `OpenMPIRBuilder` that combines
the creation of the so-called offloading pointer arrays and their
subsequent preparation as arguments to the OpenMP runtime library. We
then use this in Clang. 

This is intended to be used in the near future
by other frontends such as Flang when lowering MLIR to LLVMIR.


  Commit: 38f2f9527249894a6a77c22abe8f39d6369d7ced
      https://github.com/llvm/llvm-project/commit/38f2f9527249894a6a77c22abe8f39d6369d7ced
  Author: PiJoules <6019989+PiJoules at users.noreply.github.com>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

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

  Log Message:
  -----------
  [Fuchsia] Apply armv8m flags for runtimes (#100656)

These are needed for cortex-m33. Ideally in the future we'd have
separate multilibs for different ABI configs and we wouldn't need to
explicitly set cortex-m33 manually. The driver should handle it.


  Commit: 8dd574236ccaa0a183278396cfec3068b832651a
      https://github.com/llvm/llvm-project/commit/8dd574236ccaa0a183278396cfec3068b832651a
  Author: David Blaikie <dblaikie at gmail.com>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    M clang/test/Driver/aarch64-ptrauth.c

  Log Message:
  -----------
  Fix aarch64-ptrauth.c to avoid writing to cwd which might not be writeable

Some of the tests seem to test beyond the driver (& check a warning
coming from the frontend) and should probably be split into separate
tests.


  Commit: 364ee4ee36942e76861e1e7ec9ff8d46ca76e647
      https://github.com/llvm/llvm-project/commit/364ee4ee36942e76861e1e7ec9ff8d46ca76e647
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    M lld/test/MachO/filelist.s

  Log Message:
  -----------
  [lld-macho,test] Avoid writing to CWD

Don't write to `filelist` in the current working directory, whigh might
be read-only in some testing environmens.


  Commit: 4ed543d414b6f39fb5302322eecb8abf33c76f89
      https://github.com/llvm/llvm-project/commit/4ed543d414b6f39fb5302322eecb8abf33c76f89
  Author: Cyndy Ishida <cyndy_ishida at apple.com>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    M clang/lib/InstallAPI/DirectoryScanner.cpp
    A clang/test/InstallAPI/directory-scanning-subdirectories.test

  Log Message:
  -----------
  [InstallAPI] Fix early return for scanning sub-directories (#100636)


  Commit: 7b1bb2bbebc4705e2f30bb2179636a73696c4656
      https://github.com/llvm/llvm-project/commit/7b1bb2bbebc4705e2f30bb2179636a73696c4656
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    M llvm/lib/Passes/StandardInstrumentations.cpp

  Log Message:
  -----------
  [Passes] Switch to xxh3_64bits

FNV is slow and the name StableHashing.h might be misleading. Just use
xxh3_64bits, which has been adopted in many places.


  Commit: b27360c346a529affde40150f46b967b616a2144
      https://github.com/llvm/llvm-project/commit/b27360c346a529affde40150f46b967b616a2144
  Author: Stephan T. Lavavej <stl at nuwen.net>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    M libcxx/test/std/time/time.zone/time.zone.timezone/time.zone.members/to_sys.pass.cpp

  Log Message:
  -----------
  [libc++][test] Fix Clang `-Wunused-variable` warnings in time.zone.members/to_sys.pass.cpp (#100504)


  Commit: e788788c42fcbed5077b13f8bb88a81a832ab6eb
      https://github.com/llvm/llvm-project/commit/e788788c42fcbed5077b13f8bb88a81a832ab6eb
  Author: Brad Smith <brad at comstyle.com>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Sema/Sema.h
    M clang/lib/Sema/SemaChecking.cpp
    M clang/lib/Sema/SemaDeclAttr.cpp
    M clang/test/Sema/attr-format.c

  Log Message:
  -----------
  [clang][Sema] Add support for OpenBSD's syslog format attribute (#97366)


  Commit: 0d4f9484bcd51d1ed07723c7b762e0f33d9f448f
      https://github.com/llvm/llvm-project/commit/0d4f9484bcd51d1ed07723c7b762e0f33d9f448f
  Author: Med Ismail Bennani <ismail at bennani.ma>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedPlatformPythonInterface/ScriptedPlatformPythonInterface.cpp
    M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedPlatformPythonInterface/ScriptedPlatformPythonInterface.h
    M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedProcessPythonInterface/ScriptedProcessPythonInterface.h
    M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedPythonInterface.cpp
    M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedPythonInterface.h
    M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedThreadPlanPythonInterface/ScriptedThreadPlanPythonInterface.cpp
    M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedThreadPythonInterface.cpp
    M lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp

  Log Message:
  -----------
  [lldb/Plugins] Fix build failure on windows following 2914a4b88837

This patch tries to fix the following build failure on windows:

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

This started happening following 2914a4b88837, and it seems to be caused
by some special `#include` ordering for the lldb-python header on Windows.

Signed-off-by: Med Ismail Bennani <ismail at bennani.ma>


  Commit: 329ee76fdde16e212df61cd4c9953b8fb332f652
      https://github.com/llvm/llvm-project/commit/329ee76fdde16e212df61cd4c9953b8fb332f652
  Author: Amir Ayupov <aaupov at fb.com>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    M llvm/include/llvm/MC/MCPseudoProbe.h

  Log Message:
  -----------
  [MC][NFC] Drop unused MCDecodedPseudoProbeInlineTree::ChildrenToProcess (#100576)

The usage was removed in 3f97016857b0305294f3a55ea220884fb50ce033.

Results in a slight peak RSS reduction in
`perf2bolt --profile-use-pseudo-probes` from 17.24 to 16.85 GiB.


  Commit: 026972af9c3cbd85b654b67a5b5c3b754a78a997
      https://github.com/llvm/llvm-project/commit/026972af9c3cbd85b654b67a5b5c3b754a78a997
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    M lld/ELF/ScriptLexer.cpp

  Log Message:
  -----------
  [ELF] Remove obsoleted comment after #99567


  Commit: 7432ad6af551d7b49f54ae2bb0693192ded987c6
      https://github.com/llvm/llvm-project/commit/7432ad6af551d7b49f54ae2bb0693192ded987c6
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    A llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-safe-dep-distance.ll

  Log Message:
  -----------
  [LV][VP][NFC]Add tests for safe store/load forwarding/dependence distance.



Reviewers: fhahn

Reviewed By: fhahn

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


  Commit: 754dc9ff5ada14afef0d7981192d44f249f63e27
      https://github.com/llvm/llvm-project/commit/754dc9ff5ada14afef0d7981192d44f249f63e27
  Author: Luke Lau <luke at igalia.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/lib/Target/RISCV/RISCVVectorPeephole.cpp
    M llvm/test/CodeGen/RISCV/rvv/pr83017.ll
    M llvm/test/CodeGen/RISCV/rvv/pr90559.ll

  Log Message:
  -----------
  [RISCV] Move exact VLEN VLMAX transform to RISCVVectorPeephole (#100551)

We can teach RISCVVectorPeephole to detect when an AVL is equal to the
VLMAX when the exact VLEN is known and use the VLMAX sentinel instead,
and in doing so remove the need for getVLOp in RISCVISelLowering. This
keeps all the VLMAX logic in one place.


  Commit: e8504cb0c933b75d0e31a627d3bd4c0e37e042e1
      https://github.com/llvm/llvm-project/commit/e8504cb0c933b75d0e31a627d3bd4c0e37e042e1
  Author: Med Ismail Bennani <ismail at bennani.ma>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    M lldb/include/lldb/Core/PluginManager.h
    M lldb/include/lldb/Interpreter/Interfaces/ScriptedInterface.h
    R lldb/include/lldb/Interpreter/Interfaces/ScriptedInterfaceUsages.h
    M lldb/include/lldb/lldb-private-interfaces.h
    M lldb/source/Commands/CommandObjectScripting.cpp
    M lldb/source/Commands/Options.td
    M lldb/source/Core/PluginManager.cpp
    M lldb/source/Interpreter/CMakeLists.txt
    R lldb/source/Interpreter/Interfaces/CMakeLists.txt
    R lldb/source/Interpreter/Interfaces/ScriptedInterfaceUsages.cpp
    M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/CMakeLists.txt
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/OperatingSystemPythonInterface.cpp
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/OperatingSystemPythonInterface.h
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/OperatingSystemPythonInterface/CMakeLists.txt
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/OperatingSystemPythonInterface/OperatingSystemPythonInterface.cpp
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/OperatingSystemPythonInterface/OperatingSystemPythonInterface.h
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedPlatformPythonInterface.cpp
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedPlatformPythonInterface.h
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedPlatformPythonInterface/CMakeLists.txt
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedPlatformPythonInterface/ScriptedPlatformPythonInterface.cpp
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedPlatformPythonInterface/ScriptedPlatformPythonInterface.h
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedProcessPythonInterface.cpp
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedProcessPythonInterface.h
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedProcessPythonInterface/CMakeLists.txt
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedProcessPythonInterface/ScriptedProcessPythonInterface.cpp
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedProcessPythonInterface/ScriptedProcessPythonInterface.h
    M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedPythonInterface.cpp
    M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedPythonInterface.h
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedThreadPlanPythonInterface.cpp
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedThreadPlanPythonInterface.h
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedThreadPlanPythonInterface/CMakeLists.txt
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedThreadPlanPythonInterface/ScriptedThreadPlanPythonInterface.cpp
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedThreadPlanPythonInterface/ScriptedThreadPlanPythonInterface.h
    M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedThreadPythonInterface.cpp
    M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedThreadPythonInterface.h
    M lldb/source/Plugins/ScriptInterpreter/Python/PythonDataObjects.h
    M lldb/source/Plugins/ScriptInterpreter/Python/SWIGPythonBridge.h
    M lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp
    M lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.h
    M lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPythonImpl.h

  Log Message:
  -----------
  [lldb] Revert scripting template list patches (#100673)

Reverts https://github.com/llvm/llvm-project/pull/97273 since it broke
the windows bot:

https://lab.llvm.org/buildbot/#/builders/141/builds/1025/steps/4/logs/stdio


  Commit: 8644a2aa0f3540c69464f56b3d538e888b6cbdcb
      https://github.com/llvm/llvm-project/commit/8644a2aa0f3540c69464f56b3d538e888b6cbdcb
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    R lld/test/ELF/invalid-linkerscript.test
    A lld/test/ELF/linkerscript/diag.test
    R lld/test/ELF/linkerscript/diag1.test
    R lld/test/ELF/linkerscript/diag2.test
    R lld/test/ELF/linkerscript/diag3.test
    R lld/test/ELF/linkerscript/diag4.test
    R lld/test/ELF/linkerscript/diag5.test
    R lld/test/ELF/linkerscript/diag6.test
    A lld/test/ELF/linkerscript/invalid.test
    A lld/test/ELF/linkerscript/unquoted.test

  Log Message:
  -----------
  [ELF,test] Improve negative linker script tests


  Commit: 25f9415713f9f57760a5322876906dc11385ef8e
      https://github.com/llvm/llvm-project/commit/25f9415713f9f57760a5322876906dc11385ef8e
  Author: Alan Zhao <ayzhao at google.com>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    M compiler-rt/lib/sanitizer_common/sanitizer_ptrauth.h

  Log Message:
  -----------
  [compiler-rt][ubsan][nfc-ish] Fix a type conversion bug (#100665)

If the inline asm version of `ptrauth_strip` is used instead of the
builtin, the inline asm implementation currently returns an unsigned
long, causing an incompatible pointer conversion issue. The spec for
`ptrauth_sign` is that the result has the same type as the original
value, so we add a cast to the result of the inline asm.


  Commit: 5bf085921ec23e5fa1ea4a159c55a618a9299ce6
      https://github.com/llvm/llvm-project/commit/5bf085921ec23e5fa1ea4a159c55a618a9299ce6
  Author: NAKAMURA Takumi <geek4civic at gmail.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

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

  Log Message:
  -----------
  Revert "[llvm][Bazel] Adapt to 4eb30cfb3474e3770b465cdb39db3b7f6404c3ef"

Since #99276 has been landed, the dependency has become redundant.

This reverts commit aa94a43178e1e1fa4dbe7ee802d46623667067ae.
(llvmorg-19-init-17718-gaa94a43178e1)


  Commit: 978c40b4482c7f87a5d087ade85cee53089146d4
      https://github.com/llvm/llvm-project/commit/978c40b4482c7f87a5d087ade85cee53089146d4
  Author: Ding Fei <fding at feysh.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M clang/unittests/AST/ASTImporterTest.cpp
    M clang/unittests/AST/StructuralEquivalenceTest.cpp

  Log Message:
  -----------
  [clang][ASTImporter][NFC] add unittests for unnamed EnumDecl (#100545)

These tests are for multiple anonymous EnumDecls structural eq test &
importing.

We found the anonymous enums importing issue a few days ago and tried to
fix it
but 0a6233a68c7b575d05bca0f0c708b7e97cc710d1 already did this. I think
these tests are still useful for regressions.


  Commit: 4d51e83728d17d14e25ab0f36006badb21eea3e3
      https://github.com/llvm/llvm-project/commit/4d51e83728d17d14e25ab0f36006badb21eea3e3
  Author: Emilio Cota <ecg at google.com>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    M mlir/lib/Conversion/GPUCommon/OpToFuncCallLowering.h
    M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel

  Log Message:
  -----------
  [mlir] fixes for f6431f0c5268


  Commit: 6f65a397858cb9ed598db7433f332e5bc1862637
      https://github.com/llvm/llvm-project/commit/6f65a397858cb9ed598db7433f332e5bc1862637
  Author: Luke Lau <luke at igalia.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVVectorPeephole.cpp
    M llvm/test/CodeGen/RISCV/O3-pipeline.ll

  Log Message:
  -----------
  [RISCV] Update RISCVVectorPeephole pass name

It was previously called RISCVFoldMasks


  Commit: f4be6812e203690073280b9ac8d60092d75bbdce
      https://github.com/llvm/llvm-project/commit/f4be6812e203690073280b9ac8d60092d75bbdce
  Author: Emilio Cota <ecg at google.com>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

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

  Log Message:
  -----------
  [mlir][bazel] fix for c194bc77a21d


  Commit: 70a9535f714e2fdb84af243a1a316012c8019049
      https://github.com/llvm/llvm-project/commit/70a9535f714e2fdb84af243a1a316012c8019049
  Author: Alexander Shaposhnikov <ashaposhnikov at google.com>
  Date:   2024-07-25 (Thu, 25 Jul 2024)

  Changed paths:
    M llvm/lib/Transforms/Instrumentation/NumericalStabilitySanitizer.cpp
    M llvm/test/Instrumentation/NumericalStabilitySanitizer/basic.ll

  Log Message:
  -----------
  [Instrumentation][nsan] Add support for Freeze instruction (#100490)

Add support for Freeze.

This fixes https://github.com/llvm/llvm-project/issues/98143 .


  Commit: e108853ac8fad27ff22be9303c87d90bcdf0ef53
      https://github.com/llvm/llvm-project/commit/e108853ac8fad27ff22be9303c87d90bcdf0ef53
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M clang/lib/CodeGen/CGAtomic.cpp
    M clang/lib/CodeGen/CGExprScalar.cpp
    M clang/lib/CodeGen/CGStmtOpenMP.cpp
    M clang/lib/CodeGen/CodeGenFunction.h
    M clang/lib/CodeGen/TargetInfo.h
    M clang/lib/CodeGen/Targets/AMDGPU.cpp
    A clang/test/CodeGen/AMDGPU/amdgpu-atomic-float.c
    M clang/test/CodeGenCUDA/amdgpu-atomic-ops.cu
    A clang/test/OpenMP/amdgpu-unsafe-fp-atomics.cpp

  Log Message:
  -----------
  clang: Allow targets to set custom metadata on atomics (#96906)

Use this to replace the emission of the amdgpu-unsafe-fp-atomics
attribute in favor of per-instruction metadata. In the future
new fine grained controls should be introduced that also cover
the integer cases.

Add a wrapper around CreateAtomicRMW that appends the metadata,
and update a few use contexts to use it.


  Commit: 63d088c6e46122bc776f89ded4f285feaab69ae6
      https://github.com/llvm/llvm-project/commit/63d088c6e46122bc776f89ded4f285feaab69ae6
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

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

  Log Message:
  -----------
  FastISel: Do not check for module debug info (#100353)

I don't see the point of this check and SelectionDAG
does not perform it. In the normal usecase, if there's
no debug info the debug intrinsics would not be there
in the first place.


  Commit: e27358c8ed7abac200546e808ea30a86aa9aa580
      https://github.com/llvm/llvm-project/commit/e27358c8ed7abac200546e808ea30a86aa9aa580
  Author: wanglei <wanglei at loongson.cn>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M llvm/lib/Target/LoongArch/AsmParser/LoongArchAsmParser.cpp
    M llvm/lib/Target/LoongArch/LoongArchInstrInfo.td
    M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchFixupKinds.h
    M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchMCCodeEmitter.cpp
    M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchMCExpr.cpp
    M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchMCExpr.h
    M llvm/test/MC/LoongArch/Basic/Integer/invalid.s
    M llvm/test/MC/LoongArch/Relocations/relocations.s

  Log Message:
  -----------
  [LoongArch][MC] Support %[ld_/gd_/desc_]pcrel_20

Reviewed By: SixWeining, MaskRay

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


  Commit: 0057a969a2a397c1ba57e06b65a8bb56af2ce987
      https://github.com/llvm/llvm-project/commit/0057a969a2a397c1ba57e06b65a8bb56af2ce987
  Author: wanglei <wanglei at loongson.cn>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M lld/ELF/Arch/LoongArch.cpp
    M lld/ELF/Relocations.cpp
    A lld/test/ELF/loongarch-tls-gd-pcrel20-s2.s
    A lld/test/ELF/loongarch-tls-ld-pcrel20-s2.s
    A lld/test/ELF/loongarch-tlsdesc-pcrel20-s2.s

  Log Message:
  -----------
  [lld][ELF][LoongArch] Support R_LARCH_TLS_{LD,GD,DESC}_PCREL_S2

Reviewed By: MaskRay, SixWeining

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


  Commit: 92a06546ab50c2b6beac766d989b30960c353e61
      https://github.com/llvm/llvm-project/commit/92a06546ab50c2b6beac766d989b30960c353e61
  Author: Fabian Ritter <fabian.ritter at amd.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M llvm/lib/Transforms/Utils/LowerMemIntrinsics.cpp
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.memmove.ll
    M llvm/test/CodeGen/AMDGPU/lower-mem-intrinsics.ll
    M llvm/test/CodeGen/NVPTX/lower-aggr-copies.ll

  Log Message:
  -----------
  [LowerMemIntrinsics] Lower llvm.memmove to wide memory accesses (#100122)

So far, the IR-level lowering of llvm.memmove intrinsics generates loops
that copy each byte individually. This can be wasteful for targets that
provide wider memory access operations.

This patch makes the memmove lowering more similar to the lowering of
memcpy with unknown length.
TargetTransformInfo::getMemcpyLoopLoweringType() is queried for an
adequate type for the memory accesses, and if it is wider than a single
byte, the greatest multiple of the type's size that is less than or
equal to the length is copied with corresponding wide memory accesses. A
residual loop with byte-wise accesses (or a sequence of suitable memory
accesses in case the length is statically known) is introduced for the
remaining bytes.

For memmove, this construct is required in two variants: one for copying
forward and one for copying backwards, to handle overlapping memory
ranges. For the backwards case, the residual code still covers the bytes
at the end of the copied region and is therefore executed before the
wide main loop. This implementation choice is based on the assumption
that we are more likely to encounter memory ranges whose start aligns
with the access width than ones whose end does.

In microbenchmarks on gfx1030 (AMDGPU), this change yields speedups up
to 16x for memmoves with variable or large constant lengths.

Part of SWDEV-455845.


  Commit: 1079d9c9c00822790a4226ecac5ae6fababdcac1
      https://github.com/llvm/llvm-project/commit/1079d9c9c00822790a4226ecac5ae6fababdcac1
  Author: R <rqou at berkeley.edu>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M llvm/tools/llvm-driver/llvm-driver.cpp

  Log Message:
  -----------
  [llvm-driver] Add a newline at the end of the help message (#99425)

This was constantly messing with my terminal prompt 😹


  Commit: 988fd956e776bad8057a8b7ee051a524308c097b
      https://github.com/llvm/llvm-project/commit/988fd956e776bad8057a8b7ee051a524308c097b
  Author: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M clang/docs/LanguageExtensions.rst
    M clang/docs/ReleaseNotes.rst
    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_virtual_base_of()` intrinsic (#100393)

This patch adds compiler support for
[P2985R0](https://wg21.link/p2985r0) "A type trait for detecting virtual
base classes".
Like we recently did with `__is_layout_compatible()` and
`__is_pointer_interconvertible_base_of()`, we support it only in C++
mode, and reject VLAs.

Resolves #98310.


  Commit: ed1c67b129bdb4343a147e1d72968e7d1f0cd1cf
      https://github.com/llvm/llvm-project/commit/ed1c67b129bdb4343a147e1d72968e7d1f0cd1cf
  Author: Nathan James <n.james93 at hotmail.co.uk>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M clang-tools-extra/clang-tidy/add_new_check.py

  Log Message:
  -----------
  Add a description parameter to the add_new_check script (#100111)

Adds a description parameter that automatically fills in the Release
notes and first line of the checks documentation. If omitted the usually
FIXME markers are left in their place.


  Commit: 9482a8385b94f2c32379fb0b946516ff54261b32
      https://github.com/llvm/llvm-project/commit/9482a8385b94f2c32379fb0b946516ff54261b32
  Author: Edd Dawson <edd.dawson at sony.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M clang/lib/Driver/ToolChains/PS4CPU.cpp
    M clang/test/Driver/stack-size-section.c

  Log Message:
  -----------
  [PS5][Driver] Ensure stack sizes are emitted by LTO (#100592)

... when requested.

Upstreaming a private patch.

SIE tracker: TOOLCHAIN-16575


  Commit: 3921900198653d205753b2d85dc31ca5bc009fdd
      https://github.com/llvm/llvm-project/commit/3921900198653d205753b2d85dc31ca5bc009fdd
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/MachineModuleInfo.h
    M llvm/lib/CodeGen/MachineModuleInfo.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp
    M llvm/lib/Target/X86/X86AsmPrinter.cpp

  Log Message:
  -----------
  CodeGen: Remove UsesMSVCFloatingPoint from MachineModuleInfo (#100368)

This is only used by x86 and only used in the AsmPrinter module pass. I
think implementing this by looking at the underlying IR types instead
of the selected instructions is a pretty horrifying implementation,
but it's still available in the AsmPrinter.

This is https://reviews.llvm.org/D123933 resurrected.

I still don't know what the point of emitting _fltused is, but this
approach of looking at the IR types probably isn't the right way to
do this in the first place. If the intent is report any FP instructions,
this will miss any implicitly introduced ones during codegen. Also don't
know why just unconditionally emitting it isn't an option.

The last review mentioned the ARMs might want to emit this, but I'm
not going to go fix that. If someone wants to emit this on ARM, they
can move this to a common helper or analysis somewhere.


  Commit: b009f4685838f7ceff3cb9ff58fed0e25eb93d88
      https://github.com/llvm/llvm-project/commit/b009f4685838f7ceff3cb9ff58fed0e25eb93d88
  Author: serge-sans-paille <serge.guelton at telecom-bretagne.eu>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M flang/runtime/transformational.cpp

  Log Message:
  -----------
  [Flang][Runtime] Explicitly convert shift value to SubscriptValue (#99822)

Shift value are within the range of SubscriptValue but the API forces
them to 64bits. This assumption doesn't hold for 32bit machine, so add
an explicit cast.


  Commit: a82032918cd445e5750e171f57d4f3d7096c021a
      https://github.com/llvm/llvm-project/commit/a82032918cd445e5750e171f57d4f3d7096c021a
  Author: Changpeng Fang <changpeng.fang at amd.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M llvm/test/CodeGen/AMDGPU/amdpal-elf.ll
    M llvm/test/CodeGen/AMDGPU/atomic_optimizations_buffer.ll
    M llvm/test/CodeGen/AMDGPU/atomic_optimizations_global_pointer.ll
    M llvm/test/CodeGen/AMDGPU/atomic_optimizations_local_pointer.ll
    M llvm/test/CodeGen/AMDGPU/atomic_optimizations_pixelshader.ll
    M llvm/test/CodeGen/AMDGPU/atomic_optimizations_raw_buffer.ll
    M llvm/test/CodeGen/AMDGPU/atomic_optimizations_struct_buffer.ll
    M llvm/test/CodeGen/AMDGPU/basic-branch.ll
    M llvm/test/CodeGen/AMDGPU/early-term.mir
    M llvm/test/CodeGen/AMDGPU/global_atomics_scan_fadd.ll
    M llvm/test/CodeGen/AMDGPU/global_atomics_scan_fmax.ll
    M llvm/test/CodeGen/AMDGPU/global_atomics_scan_fmin.ll
    M llvm/test/CodeGen/AMDGPU/global_atomics_scan_fsub.ll
    M llvm/test/CodeGen/AMDGPU/hazard-hidden-bundle.mir
    M llvm/test/CodeGen/AMDGPU/hazard-in-bundle.mir
    M llvm/test/CodeGen/AMDGPU/hsa-generic-target-features.ll
    M llvm/test/CodeGen/AMDGPU/hsa-metadata-wavefrontsize.ll
    M llvm/test/CodeGen/AMDGPU/hsa.ll
    M llvm/test/CodeGen/AMDGPU/huge-private-buffer.ll
    M llvm/test/CodeGen/AMDGPU/insert-delay-alu-literal.mir
    M llvm/test/CodeGen/AMDGPU/insert-delay-alu-parse.mir
    M llvm/test/CodeGen/AMDGPU/insert-delay-alu.mir
    M llvm/test/CodeGen/AMDGPU/isel-amdgcn-cs-chain-intrinsic-w32.ll
    M llvm/test/CodeGen/AMDGPU/isel-amdgcn-cs-chain-intrinsic-w64.ll
    M llvm/test/CodeGen/AMDGPU/isel-amdgpu-cs-chain-cc.ll
    M llvm/test/CodeGen/AMDGPU/isel-amdgpu-cs-chain-preserve-cc.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.ballot.i32.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.global.load.tr-w32.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.global.load.tr-w64.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.init.exec.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.init.exec.wave32.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.kill.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.wmma_32.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.wmma_64.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.wqm.demote.ll
    M llvm/test/CodeGen/AMDGPU/mubuf-legalize-operands-non-ptr-intrinsics.ll
    M llvm/test/CodeGen/AMDGPU/mubuf-legalize-operands.ll
    M llvm/test/CodeGen/AMDGPU/mubuf-legalize-operands.mir
    M llvm/test/CodeGen/AMDGPU/multi-divergent-exit-region.ll
    M llvm/test/CodeGen/AMDGPU/s_or_saveexec_xor_combine.mir
    M llvm/test/CodeGen/AMDGPU/sgpr-spill.mir
    M llvm/test/CodeGen/AMDGPU/sink-after-control-flow-postra.mir
    M llvm/test/CodeGen/AMDGPU/skip-if-dead.ll
    M llvm/test/CodeGen/AMDGPU/smem-war-hazard.mir
    M llvm/test/CodeGen/AMDGPU/spill-special-sgpr.mir
    M llvm/test/CodeGen/AMDGPU/v_cmp_gfx11.ll
    M llvm/test/CodeGen/AMDGPU/vccz-corrupt-bug-workaround.mir
    M llvm/test/CodeGen/AMDGPU/vcmp-saveexec-to-vcmpx.mir
    M llvm/test/CodeGen/AMDGPU/vcmpx-exec-war-hazard.mir
    M llvm/test/CodeGen/AMDGPU/verify-constant-bus-violations.mir
    M llvm/test/CodeGen/AMDGPU/verify-vopd-gfx12.mir
    M llvm/test/CodeGen/AMDGPU/verify-vopd.mir
    M llvm/test/CodeGen/AMDGPU/wmma-gfx12-w64-f16-f32-matrix-modifiers.ll
    M llvm/test/CodeGen/AMDGPU/wmma-gfx12-w64-imm.ll
    M llvm/test/CodeGen/AMDGPU/wmma-gfx12-w64-iu-modifiers.ll
    M llvm/test/CodeGen/AMDGPU/wmma-gfx12-w64-swmmac-index_key.ll
    M llvm/test/CodeGen/AMDGPU/wmma-gfx12-w64.ll
    M llvm/test/CodeGen/AMDGPU/wmma-hazards-gfx12-w64.mir
    M llvm/test/CodeGen/AMDGPU/wmma_modifiers.ll
    M llvm/test/CodeGen/AMDGPU/wmma_multiple_32.ll
    M llvm/test/CodeGen/AMDGPU/wmma_multiple_64.ll
    M llvm/test/CodeGen/AMDGPU/wqm.ll

  Log Message:
  -----------
  [AMDGPU] Remove -wavefrontsize32 and -wavefrontsize64 from GFX10+ tests (NFC) (#100711)

They are no longer needed after the patch: [AMDGPU] Remove wavefrontsize
feature from GFX10: https://github.com/llvm/llvm-project/pull/98400
The exception is when "target-features" are set to "+wavefrontsize32" or
"+wavefrontsize64", we still need to remove a wavefrontsize feature
before add a different one to make sure only one of them are present.


  Commit: ed4e75d5e5ada30c37c57df032378a77e6dd598e
      https://github.com/llvm/llvm-project/commit/ed4e75d5e5ada30c37c57df032378a77e6dd598e
  Author: Pengcheng Wang <wangpengcheng.pp at bytedance.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/MachineInstr.h
    M llvm/lib/CodeGen/BranchFolding.cpp
    M llvm/lib/CodeGen/DeadMachineInstructionElim.cpp
    M llvm/lib/CodeGen/EarlyIfConversion.cpp
    M llvm/lib/CodeGen/GlobalISel/Utils.cpp
    M llvm/lib/CodeGen/IfConversion.cpp
    M llvm/lib/CodeGen/LiveRangeEdit.cpp
    M llvm/lib/CodeGen/LiveRangeShrink.cpp
    M llvm/lib/CodeGen/MachineInstr.cpp
    M llvm/lib/CodeGen/MachineLICM.cpp
    M llvm/lib/CodeGen/MachineLateInstrsCleanup.cpp
    M llvm/lib/CodeGen/MachineSink.cpp
    M llvm/lib/CodeGen/ModuloSchedule.cpp
    M llvm/lib/CodeGen/RegisterCoalescer.cpp
    M llvm/lib/CodeGen/TwoAddressInstructionPass.cpp
    M llvm/lib/Target/AArch64/AArch64ConditionalCompares.cpp
    M llvm/lib/Target/ARM/ARMBaseInstrInfo.cpp
    M llvm/lib/Target/Hexagon/HexagonBitSimplify.cpp
    M llvm/lib/Target/Hexagon/HexagonGenInsert.cpp
    M llvm/lib/Target/Lanai/LanaiInstrInfo.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfo.cpp
    M llvm/lib/Target/SystemZ/SystemZInstrInfo.cpp
    M llvm/lib/Target/X86/X86InstrInfo.cpp

  Log Message:
  -----------
  [CodeGen] Remove AA parameter of isSafeToMove (#100691)

This `AA` parameter is not used and for most uses they just pass
a nullptr.

The use of `AA` was removed since 8d0383e.


  Commit: 9440a49b0ff812c889927e4dc81e746b32124bb4
      https://github.com/llvm/llvm-project/commit/9440a49b0ff812c889927e4dc81e746b32124bb4
  Author: Balázs Kéri <balazs.keri at ericsson.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M clang/include/clang/StaticAnalyzer/Checkers/Checkers.td
    M clang/lib/StaticAnalyzer/Checkers/MmapWriteExecChecker.cpp
    M clang/test/Analysis/analyzer-config.c
    M clang/test/Analysis/mmap-writeexec.c

  Log Message:
  -----------
  [clang][analyzer] MmapWriteExecChecker improvements (#97078)

Read the 'mmap' flags from macro values and use a better test for the
error situation. Checker messages are improved too.


  Commit: f8ae128755777424cf4133e4e8e819c0bc08d2b1
      https://github.com/llvm/llvm-project/commit/f8ae128755777424cf4133e4e8e819c0bc08d2b1
  Author: Alexandros Lamprineas <alexandros.lamprineas at arm.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/lib/Sema/SemaDecl.cpp
    M clang/lib/Sema/SemaDeclAttr.cpp
    A clang/test/CodeGen/aarch64-fmv-streaming.c
    A clang/test/Sema/aarch64-fmv-streaming.c
    M clang/test/Sema/aarch64-sme-func-attrs.c

  Log Message:
  -----------
  [clang][FMV][AArch64] Improve streaming mode compatibility. (#100181)

* Allow arm-streaming if all the functions versions adhere to it.
* Allow arm-streaming-compatible if all the functions versions adhere to
it.

When the caller needs to toggle the streaming mode all the function
versions of the callee must adhere to the same mode, otherwise the call
will yield a runtime error.

Imagine the versions of the callee live in separate TUs. The version
that is visible to the caller will determine the calling convention used
when generating code for the callsite. Therefore we cannot support
mixing streaming with non-streaming function versions. Imagine TU1 has a
streaming caller and calls foo._sme which is streaming-compatible. The
codegen for the callsite will not switch off the streaming mode. Then in
TU2 we have a version which is non-streaming and could potentially be
called in streaming mode. Similarly if the caller is non-streaming and
the called version is streaming-compatible the codegen for the callsite
will not switch on the streaming mode, but other versions may be
streaming.


  Commit: 8d937c60a761def562bcf4cccbaea58176ee47da
      https://github.com/llvm/llvm-project/commit/8d937c60a761def562bcf4cccbaea58176ee47da
  Author: Dmitri Gribenko <gribozavr at gmail.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M llvm/bindings/ocaml/llvm/llvm.ml

  Log Message:
  -----------
  [bindings][ocaml] Remove a reference to the deleted function `llvm_x86_mmx_type`

The function was removed in dfeb3991fb489a703f631ab0c34b58f80568038d.

This change fixes the build for OCaml bindings and tests.


  Commit: 3834523f77c0709ef873a3b1fb878d096687987a
      https://github.com/llvm/llvm-project/commit/3834523f77c0709ef873a3b1fb878d096687987a
  Author: Mel Chen <mel.chen at sifive.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlan.h
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    M llvm/unittests/Transforms/Vectorize/VPlanTest.cpp

  Log Message:
  -----------
  [LV][EVL] Refine the constructors of EVL recipe to use call by reference. NFC (#100088)


  Commit: 6f83a031e452bb33c0ee23b8c5c4dee97ce2bf52
      https://github.com/llvm/llvm-project/commit/6f83a031e452bb33c0ee23b8c5c4dee97ce2bf52
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/FunctionLoweringInfo.h
    M llvm/include/llvm/CodeGen/MachineModuleInfo.h
    M llvm/lib/CodeGen/MachineFunction.cpp
    M llvm/lib/CodeGen/MachineModuleInfo.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp

  Log Message:
  -----------
  CodeGen: Move current call site out of MachineModuleInfo (#100369)

I do not know understand what this is for, but it's only used in
SelectionDAGBuilder, so move it to FunctionLoweringInfo like other
function scope DAG builder state. The intrinsics are not documented
in the LangRef or Intrinsics.td.

This removes the last piece of codegen state from MachineModuleInfo.


  Commit: 4ce3993ee2b6ee883ef62100df68db9e10ef1dc9
      https://github.com/llvm/llvm-project/commit/4ce3993ee2b6ee883ef62100df68db9e10ef1dc9
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M llvm/lib/CodeGen/AsmPrinter/DebugHandlerBase.cpp
    M llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
    M llvm/lib/Target/NVPTX/NVPTXAsmPrinter.cpp

  Log Message:
  -----------
  DebugInfo: Avoid some MMI::hasDebugInfo checks (#100333)

I assume getSubprogram will do the correct thing in hasDebugInfo,
and this is redundant with the debug_compile_units distance check.
This is in preparation for removing the field.


  Commit: 63e1647827f3427c5f3ad37461d84a63ba5fcdaf
      https://github.com/llvm/llvm-project/commit/63e1647827f3427c5f3ad37461d84a63ba5fcdaf
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/AsmPrinter.h
    M llvm/include/llvm/CodeGen/MIRPrinter.h
    M llvm/include/llvm/CodeGen/MachineFunction.h
    M llvm/include/llvm/CodeGen/MachineModuleInfo.h
    M llvm/include/llvm/CodeGen/SelectionDAG.h
    M llvm/include/llvm/CodeGen/TargetInstrInfo.h
    M llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
    M llvm/lib/CodeGen/AsmPrinter/CodeViewDebug.cpp
    M llvm/lib/CodeGen/AsmPrinter/DebugHandlerBase.cpp
    M llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
    M llvm/lib/CodeGen/MachineFunction.cpp
    M llvm/lib/CodeGen/MachineFunctionAnalysis.cpp
    M llvm/lib/CodeGen/MachineModuleInfo.cpp
    M llvm/lib/Target/NVPTX/NVPTXAsmPrinter.cpp
    M llvm/lib/Target/PowerPC/PPCAsmPrinter.cpp
    M llvm/tools/llvm-reduce/ReducerWorkItem.cpp
    M llvm/unittests/CodeGen/AArch64SelectionDAGTest.cpp
    M llvm/unittests/CodeGen/InstrRefLDVTest.cpp
    M llvm/unittests/CodeGen/MFCommon.inc
    M llvm/unittests/CodeGen/SelectionDAGAddressAnalysisTest.cpp
    M llvm/unittests/CodeGen/SelectionDAGPatternMatchTest.cpp
    M llvm/unittests/Target/AMDGPU/ExecMayBeModifiedBeforeAnyUse.cpp
    M llvm/unittests/Target/AMDGPU/PALMetadata.cpp
    M llvm/unittests/Target/RISCV/RISCVInstrInfoTest.cpp

  Log Message:
  -----------
  CodeGen: Remove MachineModuleInfo reference from MachineFunction (#100357)

This avoids another unserializable field. Move the DbgInfoAvailable
field into the AsmPrinter, which is only really a cache/convenience
bit for checking a direct IR module metadata check.


  Commit: 7a3bc44c89b675b5fda7e90cf59e74d54778917f
      https://github.com/llvm/llvm-project/commit/7a3bc44c89b675b5fda7e90cf59e74d54778917f
  Author: Ivan Kosarev <ivan.kosarev at amd.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUInstPrinter.cpp
    M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUInstPrinter.h

  Log Message:
  -----------
  [AMDGPU][MC][NFCI] Eliminate printU4ImmDecOperand(). (#100589)

This is hoped to make things a bit safer not masking the value to print
and to make the logic in printDPPCtrl() a bit more explicit.

Part of <https://github.com/llvm/llvm-project/issues/62629>.


  Commit: 25da8e5a9798a1c25526e4dc8db571fc25cca187
      https://github.com/llvm/llvm-project/commit/25da8e5a9798a1c25526e4dc8db571fc25cca187
  Author: Ricardo Jesus <rjj at nvidia.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M llvm/lib/Transforms/Scalar/LICM.cpp
    M llvm/test/CodeGen/PowerPC/common-chain.ll
    A llvm/test/Transforms/LICM/hoist-binop.ll
    M llvm/test/Transforms/LICM/sink-foldable.ll

  Log Message:
  -----------
  Reapply "[LICM] Fold associative binary ops to promote code hoisting (#81608)" (#100377)

This reapplies a more strict version of
https://github.com/llvm/llvm-project/commit/f2ccf80136a01ca69f766becafb329db6c54c0c8.

Perform the transformation

  "(LV op C1) op C2" ==> "LV op (C1 op C2)"

where op is an associative binary op, LV is a loop variant, and C1 and
C2 are loop invariants, and hoist (C1 op C2) into the preheader.

For now this fold is restricted to ADDs.


  Commit: 35dfe8013c2e100ffa159ca183430422a370d3a4
      https://github.com/llvm/llvm-project/commit/35dfe8013c2e100ffa159ca183430422a370d3a4
  Author: Timm Bäder <tbaeder at redhat.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

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

  Log Message:
  -----------
  [clang][Interp][NFC] Don't try to access empty EvaluationResult


  Commit: d65f0375910f6dfeaa94c1060e7d81fb7bdf76be
      https://github.com/llvm/llvm-project/commit/d65f0375910f6dfeaa94c1060e7d81fb7bdf76be
  Author: Vikash Gupta <Vikash.Gupta at amd.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M clang/lib/Sema/SemaChecking.cpp
    A clang/test/CodeGenOpenCL/builtins-alloca.cl

  Log Message:
  -----------
  [Clang] Use private address space for builtin_alloca return type for OpenCL (#95750)

The __builtin_alloca was returning a flat pointer with no address space
when compiled using openCL1.2 or below but worked fine with openCL2.0
and above. This accounts to the fact that later uses the concept of
generic address space which supports cast to other address space(i.e to
private address space which is used for stack allocation) .

But, in actuality, as it returns pointer to the stack, it should be
pointing to private address space irrespective of openCL version becuase
builtin_alloca allocates stack memory used for current function in which
it is called. Thus,it requires redefintion of the builtin function with
appropraite return pointer to private address space.


  Commit: 88549cf47cafc4c4a6042393ee07fc2dc20566cc
      https://github.com/llvm/llvm-project/commit/88549cf47cafc4c4a6042393ee07fc2dc20566cc
  Author: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M clang-tools-extra/test/clang-doc/basic-project.test

  Log Message:
  -----------
  [clang-doc] Disable flaky test `basic-project.test`


  Commit: 8b02f31aea6b95db70273df2ebd9f8c533a62cc1
      https://github.com/llvm/llvm-project/commit/8b02f31aea6b95db70273df2ebd9f8c533a62cc1
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

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

  Log Message:
  -----------
  [VPlan] Consistently use VF.Width to getting plan for main loop VF (NFC)

Cleanup to make things consistent in preparation for
https://github.com/llvm/llvm-project/pull/98821.


  Commit: 94e966255fb4309f24805273d2e17f63a4e36d17
      https://github.com/llvm/llvm-project/commit/94e966255fb4309f24805273d2e17f63a4e36d17
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M llvm/lib/Target/X86/X86SchedSkylakeClient.td
    M llvm/test/tools/llvm-mca/X86/SkylakeClient/resources-avx1.s
    M llvm/test/tools/llvm-mca/X86/SkylakeClient/resources-sse41.s

  Log Message:
  -----------
  [X86] skylake only uses Port0 for (v)phminposuw instructions

Now matches skylake-server - and matches reports from uops.info, Agner and instlatx64.


  Commit: 8d4cb92e3536e86b177c354c9c5cf6f06bd61c8d
      https://github.com/llvm/llvm-project/commit/8d4cb92e3536e86b177c354c9c5cf6f06bd61c8d
  Author: yronglin <yronglin777 at gmail.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

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

  Log Message:
  -----------
  [NFC][Clang][Interp] Add more test for `__builtin_os_log_format_buffer_size` (#100566)

Signed-off-by: yronglin <yronglin777 at gmail.com>


  Commit: 67ad23fe17a516b4b66d8137f77ab0ba3b6fc95b
      https://github.com/llvm/llvm-project/commit/67ad23fe17a516b4b66d8137f77ab0ba3b6fc95b
  Author: Dmitry Chernenkov <dmitryc at google.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

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

  Log Message:
  -----------
  [Bazel] Fix Bazel build for Bolt


  Commit: 844c188c7988f33e392cde06574d95dab3d0d60a
      https://github.com/llvm/llvm-project/commit/844c188c7988f33e392cde06574d95dab3d0d60a
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M llvm/include/llvm/Analysis/LoopAccessAnalysis.h
    M llvm/lib/Analysis/LoopAccessAnalysis.cpp
    M llvm/test/Analysis/LoopAccessAnalysis/load-store-index-loaded-in-loop.ll
    M llvm/test/Analysis/LoopAccessAnalysis/pointer-with-unknown-bounds.ll
    M llvm/test/Analysis/LoopAccessAnalysis/print-order.ll
    M llvm/test/Analysis/LoopAccessAnalysis/select-dependence.ll
    M llvm/test/Analysis/LoopAccessAnalysis/symbolic-stride.ll

  Log Message:
  -----------
  [LAA] Refine stride checks for SCEVs during dependence analysis. (#99577)

Update getDependenceDistanceStrideAndSize to reason about different
combinations of strides directly and explicitly.

Update getPtrStride to return 0 for invariant pointers.

Then proceed by checking the strides.

If either source or sink are not strided by a constant (i.e. not a
non-wrapping AddRec) or invariant, the accesses may overlap
with earlier or later iterations and we cannot generate runtime
checks to disambiguate them.

Otherwise they are either loop invariant or strided. In that case, we
can generate a runtime check to disambiguate them.

If both are strided by constants, we proceed as previously.

This is an alternative to
https://github.com/llvm/llvm-project/pull/99239 and also replaces
additional checks if the underlying object is loop-invariant.

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

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


  Commit: c9c91f59c318e28d884e5762f303348ba5724d21
      https://github.com/llvm/llvm-project/commit/c9c91f59c318e28d884e5762f303348ba5724d21
  Author: Zahira Ammarguellat <zahira.ammarguellat at intel.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M clang/include/clang/Basic/LangOptions.def
    M clang/include/clang/Driver/Options.td
    M clang/lib/Basic/LangOptions.cpp
    M clang/lib/Basic/Targets/OSTargets.cpp
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/lib/Frontend/InitPreprocessor.cpp
    M clang/test/CodeGen/finite-math.c
    M clang/test/CodeGen/fp-floatcontrol-stack.cpp
    M clang/test/CodeGen/fp-options-to-fast-math-flags.c
    M clang/test/CodeGen/nofpclass.c
    M clang/test/CodeGenOpenCL/relaxed-fpmath.cl
    M clang/test/Driver/opencl.cl
    M clang/test/Headers/__clang_hip_cmath.hip
    M clang/test/Headers/__clang_hip_math.hip
    M clang/test/Headers/float.c
    M clang/test/Preprocessor/predefined-macros.c
    M clang/test/Sema/warn-infinity-nan-disabled-lnx.cpp
    M clang/test/Sema/warn-infinity-nan-disabled-win.cpp

  Log Message:
  -----------
  Remove FiniteMathOnly  and use only NoHonorINFs and NoHonorNANs. (#97342)

Currently `__FINITE_MATH_ONLY__` is set when `FiniteMathOnly`. And
`FiniteMathOnly` is set when `NoHonorInfs` && `NoHonorNans` is true. But
what happens one of the latter flags is false?
To avoid potential inconsistencies, the internal option `FiniteMathOnly`
is removed option and the macro `__FINITE_MATH_ONLY__` is set when
`NoHonorInfs` && `NoHonorNans`.


  Commit: bfa0cae31c1db7627c41dcebd660f5eaea796778
      https://github.com/llvm/llvm-project/commit/bfa0cae31c1db7627c41dcebd660f5eaea796778
  Author: Mariya Podchishchaeva <mariya.podchishchaeva at intel.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M clang/lib/Frontend/PrintPreprocessedOutput.cpp

  Log Message:
  -----------
  [NFC][clang] Avoid unnecessary assignment (#100728)

`IsStartOfLine` is set to false at the end of the loop.


  Commit: 8322a3085c902de9759a40ccdcd194a4c46e7185
      https://github.com/llvm/llvm-project/commit/8322a3085c902de9759a40ccdcd194a4c46e7185
  Author: Alexander Kornienko <alexfh at google.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M clang/lib/Sema/SemaTemplateDeduction.cpp
    A clang/test/SemaCXX/pr100095.cpp

  Log Message:
  -----------
  Avoid accessing unset optional, workaround for #100095 (#100408)

This patch avoids accessing an unset `std::optional<>`, which is a part
of the manifestation of #100095. The other part is an assertion failure
that is not addressed here. This is not a proper fix, but enables Clang
to continue working with more libc++ runtime checks enabled
(specifically, `-D_LIBCPP_HARDENING_MODE=_LIBCPP_HARDENING_MODE_FAST`,
which checks access to unset optionals among other things). A proper fix
is being discussed on #100095.


  Commit: 6e0a913973111926f9fdbd82b72ea640b013167e
      https://github.com/llvm/llvm-project/commit/6e0a913973111926f9fdbd82b72ea640b013167e
  Author: smanna12 <soumi.manna at intel.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

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

  Log Message:
  -----------
  [Clang][NFC] Remove unnecessary copy (#100688)

Reported by Static Analyzer Tool:

In Sema::checkIncorrectVTablePointerAuthenticationAttribute(): Using the
auto keyword without an & causes the copy of an object of type
CXXBaseSpecifier.


  Commit: 6a1a393997fb5f7bdb01943ed48dc72d48861824
      https://github.com/llvm/llvm-project/commit/6a1a393997fb5f7bdb01943ed48dc72d48861824
  Author: Vladislav Dzhidzhoev <vdzhidzhoev at accesssoftek.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M lldb/test/API/lang/cpp/class-template-non-type-parameter-pack/TestClassTemplateNonTypeParameterPack.py
    M lldb/test/API/lang/cpp/class-template-type-parameter-pack/TestClassTemplateTypeParameterPack.py

  Log Message:
  -----------
  [LLDB] Remove decorator from XPASSes x86/Windows (#100628)

This patch removes XFAIL decorators from tests that are passing on x86
Windows.

Corresponding XFAILs for AArch64 were removed here 7daa9a9b40a22.


  Commit: 22bc9db92b46965882b1c77aebc86430149b0912
      https://github.com/llvm/llvm-project/commit/22bc9db92b46965882b1c77aebc86430149b0912
  Author: Jonas Paulsson <paulson1 at linux.ibm.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M llvm/lib/Target/SystemZ/SystemZISelLowering.cpp
    M llvm/test/CodeGen/SystemZ/vec-combine-01.ll

  Log Message:
  -----------
  [SystemZ] Use the EVT version of getVectorVT() in combineTruncateExtract(). (#100150)

A test case showed up where the new vector type is v24i16, which is not a simple
MVT. In order to get an extended value type for cases like this, EVT::getVectorVT()
needs to be called instead of MVT::getVectorVT(), otherwise the following call
to getVectorElementType() in combineExtract() will fail.


  Commit: 9d220956320a36fd127ee14ed41f0ecdcc0fb5b0
      https://github.com/llvm/llvm-project/commit/9d220956320a36fd127ee14ed41f0ecdcc0fb5b0
  Author: Yanzuo Liu <zwuis at outlook.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/AST/DeclBase.cpp
    A clang/test/Parser/namelookup-anonymous-struct.c

  Log Message:
  -----------
  [Clang] Remove `IDNS_Ordinary` flag in `IndirectFieldDecl::IdentifierNamespace` (#100525)

There is a `IDNS_Ordinary` flag in
`IndirectFieldDecl::IdentifierNamespace` so that members in nested
anonymous struct/union can be found as ordinary identifiers.

```c
struct S {
  struct { int x; };
  // Previous behaviour: `x` in previous line is found
  // Expected: nothing is found
  int arr[sizeof(x)];
};
```

This PR fixes this issue.

Fixes #31295.


  Commit: 67a55e01e3f13d6ea5be917765a4171cd68cb5ac
      https://github.com/llvm/llvm-project/commit/67a55e01e3f13d6ea5be917765a4171cd68cb5ac
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

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

  Log Message:
  -----------
  [VPlan] Replace getBestPlan by getBestVF use also for epilogue vec. (#98821)

Replace getBestPlan by getBestVF which simply finds the best
VF out of the VFs for the available VPlans.

Then use getBestPlan to retrieve the corresponding VPlan.

This allows using getBestVF & getBestPlan for epilogue vectorization
as well. As the same plan may be used to vectorize both the main
and epilogue loop, restricting the VF of the best plan would cause
issues.

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


  Commit: 42c79f70f1aea05ab523c731a6b5985a57679de4
      https://github.com/llvm/llvm-project/commit/42c79f70f1aea05ab523c731a6b5985a57679de4
  Author: Zahira Ammarguellat <zahira.ammarguellat at intel.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M flang/lib/Frontend/CompilerInvocation.cpp

  Log Message:
  -----------
  Fix build flang issue. (#100736)


  Commit: f2a0f97f7e5094154a8b9cd104085a117e63f5d2
      https://github.com/llvm/llvm-project/commit/f2a0f97f7e5094154a8b9cd104085a117e63f5d2
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M llvm/lib/Target/X86/X86TargetTransformInfo.cpp
    M llvm/test/Analysis/CostModel/X86/arith-overflow.ll
    M llvm/test/Analysis/CostModel/X86/intrinsic-cost-kinds.ll

  Log Message:
  -----------
  [CostModel][X86] Improve vector mul overflow intrinsic costs


  Commit: 49cb1701389ac3cff3e2c552531bfd3a607311d8
      https://github.com/llvm/llvm-project/commit/49cb1701389ac3cff3e2c552531bfd3a607311d8
  Author: Pasquale Riello <pas.riello at gmail.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M clang/lib/Analysis/FlowSensitive/DataflowEnvironment.cpp
    M clang/unittests/Analysis/FlowSensitive/DataflowEnvironmentTest.cpp

  Log Message:
  -----------
  [clang][dataflow] Handle CXXInheritedCtorInitExpr in ResultObjectVisitor. (#99616)

`CXXInheritedCtorInitExpr` is another of the node kinds that should be
considered an "original initializer". An assertion failure in
`assert(Children.size() == 1)` happens without this fix.

---------

Co-authored-by: martinboehme <mboehme at google.com>


  Commit: 88accd9aaa20c6a30661c48cc2ca6dbbdf991ec0
      https://github.com/llvm/llvm-project/commit/88accd9aaa20c6a30661c48cc2ca6dbbdf991ec0
  Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M mlir/lib/Dialect/ArmSME/Transforms/VectorLegalization.cpp
    M mlir/test/Dialect/ArmSME/vector-legalization.mlir

  Log Message:
  -----------
  [mlir][ArmSME] Pattern to swap shape_cast(tranpose) with transpose(shape_cast) (#100731)

This applies when the shape_cast is simply for dropping unit dims, and
the result rank is >= 2.

This simplifies the transpose making it possible for other ArmSME
legalization patterns to handle it.

Example:

```mlir
%0 = vector.transpose %vector, [3, 0, 1, 2]
       : vector<1x1x4x[4]xf32> to vector<[4]x1x1x4xf32>
%1 = vector.shape_cast %0 : vector<[4]x1x1x4xf32> to vector<[4]x4xf32>
```

```mlir
%0 = vector.shape_cast %arg0 : vector<1x1x4x[4]xf32> to vector<4x[4]xf32>
%1 = vector.transpose %0, [1, 0] : vector<4x[4]xf32> to vector<[4]x4xf32>
```


  Commit: 68343d793a089e28f3215c3eaa7e4170442a06f8
      https://github.com/llvm/llvm-project/commit/68343d793a089e28f3215c3eaa7e4170442a06f8
  Author: Nico Weber <thakis at chromium.org>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M llvm/utils/gn/secondary/lldb/source/Interpreter/BUILD.gn
    R llvm/utils/gn/secondary/lldb/source/Interpreter/Interfaces/BUILD.gn

  Log Message:
  -----------
  Revert "[gn] port enough of 2914a4b88837 (lldb Interfaces)"

This reverts commit 08b3556c2ff8948932bcbbc77781fe41388e4e63.
2914a4b88837 got reverted in e8504cb0c933


  Commit: 0fa53d5183ec3c0654631d719dd6dfa7a270ca98
      https://github.com/llvm/llvm-project/commit/0fa53d5183ec3c0654631d719dd6dfa7a270ca98
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M libc/startup/gpu/CMakeLists.txt

  Log Message:
  -----------
  [libc] Make `crt1.o` available to clang for GPU builds (#100599)

Summary:
We want to provide the `crt1.o` object inside of the current build so
that other projects can use it for tests. Because it's currently an
object library (as is also required for the dependencies for the
hermetic tests) this cannot be renamed and is not emitted by default.
Here we simply add an executable that emits bitcode so that CMake will
give it a name.


  Commit: ca8b14de51fb15273b6697c87466dcd2661ebbc7
      https://github.com/llvm/llvm-project/commit/ca8b14de51fb15273b6697c87466dcd2661ebbc7
  Author: lntue <35648136+lntue at users.noreply.github.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M libc/config/darwin/arm/entrypoints.txt
    M libc/config/linux/aarch64/entrypoints.txt
    M libc/config/linux/arm/entrypoints.txt
    M libc/config/linux/riscv/entrypoints.txt
    M libc/config/linux/x86_64/entrypoints.txt
    M libc/config/windows/entrypoints.txt
    M libc/docs/math/index.rst
    M libc/spec/stdc.td
    M libc/src/math/generic/CMakeLists.txt
    A libc/src/math/generic/atan2.cpp
    M libc/test/src/math/CMakeLists.txt
    A libc/test/src/math/atan2_test.cpp
    M libc/test/src/math/smoke/CMakeLists.txt
    A libc/test/src/math/smoke/atan2_test.cpp

  Log Message:
  -----------
  [libc][math] Implement fast pass for double precision atan2 with 1 ULP errors. (#100648)


  Commit: f94df98a9809ce0d0e59544e40f648f9beaa858b
      https://github.com/llvm/llvm-project/commit/f94df98a9809ce0d0e59544e40f648f9beaa858b
  Author: Nico Weber <thakis at chromium.org>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M llvm/utils/gn/secondary/llvm/test/BUILD.gn
    A llvm/utils/gn/secondary/llvm/tools/llvm-ctxprof-util/BUILD.gn

  Log Message:
  -----------
  [gn] port a737b8704c03 (llvm-ctxprof-util)


  Commit: 7e049373f4d26780f558f798b403a8477dd6af08
      https://github.com/llvm/llvm-project/commit/7e049373f4d26780f558f798b403a8477dd6af08
  Author: Timm Bäder <tbaeder at redhat.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

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

  Log Message:
  -----------
  [clang][Interp][NFC] Improve InterpFrame::dump


  Commit: d3ecb16e852d81628d82110402ec0a18d6c6b2ac
      https://github.com/llvm/llvm-project/commit/d3ecb16e852d81628d82110402ec0a18d6c6b2ac
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M libc/startup/gpu/CMakeLists.txt

  Log Message:
  -----------
  [libc] Fix relocatable link attempting to pull in standard libs


  Commit: 65361ff80c18b5920eb45091ff39c1d67fbb325d
      https://github.com/llvm/llvm-project/commit/65361ff80c18b5920eb45091ff39c1d67fbb325d
  Author: Christudasan Devadasan <christudasan.devadasan at amd.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SMInstructions.td

  Log Message:
  -----------
  [AMDGPU] Use SubtargetPredicate instead of OtherPredicates for subtarget predication. (#100715)


  Commit: 8955e285e1ac48bfcd9e030a055e66aec37785cc
      https://github.com/llvm/llvm-project/commit/8955e285e1ac48bfcd9e030a055e66aec37785cc
  Author: Krzysztof Drewniak <Krzysztof.Drewniak at amd.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M mlir/docs/DefiningDialects/Operations.md
    M mlir/include/mlir/Dialect/LLVMIR/LLVMOps.td
    M mlir/include/mlir/IR/ODSSupport.h
    M mlir/include/mlir/IR/Properties.td
    M mlir/include/mlir/TableGen/Operator.h
    M mlir/include/mlir/TableGen/Property.h
    M mlir/lib/IR/ODSSupport.cpp
    M mlir/lib/TableGen/Property.cpp
    M mlir/test/IR/properties.mlir
    M mlir/test/IR/traits.mlir
    M mlir/test/Transforms/test-legalizer.mlir
    M mlir/test/lib/Dialect/Test/TestFormatUtils.cpp
    M mlir/test/lib/Dialect/Test/TestFormatUtils.h
    M mlir/test/lib/Dialect/Test/TestOps.td
    M mlir/test/lib/Dialect/Test/TestOpsSyntax.td
    M mlir/test/mlir-tblgen/op-format.mlir
    M mlir/test/mlir-tblgen/op-format.td
    M mlir/test/mlir-tblgen/op-properties.td
    M mlir/tools/mlir-tblgen/OpDefinitionsGen.cpp
    M mlir/tools/mlir-tblgen/OpFormatGen.cpp

  Log Message:
  -----------
  [mlir] Add property combinators, initial ODS support (#94732)

While we have had a Properties.td that allowed for defining
non-attribute-backed properties, such properties were not plumbed
through the basic autogeneration facilities available to attributes,
forcing those who want to migrate to the new system to write such code
by hand.

## Potentially breaking changes

- The `setFoo()` methods on `Properties` struct no longer take their
inputs by const reference. Those wishing to pass non-owned values of a
property by reference to constructors and setters should set the
interface type to `const [storageType]&`
- Adapters and operations now define getters and setters for properties
listed in ODS, which may conflict with custom getters.
- Builders now include properties listed in ODS specifications,
potentially conflicting with custom builders with the same type
signature.

## Extensions to the `Property` class

This commit  adds several fields to the `Property` class, including:
- `parser`, `optionalParser`, and `printer` (for parsing/printing
properties of a given type in ODS syntax)
- `storageTypeValueOverride`, an extension of `defaultValue` to allow
the storage and interface type defaults to differ
- `baseProperty` (allowing for classes like `DefaultValuedProperty`)

Existing fields have also had their documentation comments updated.

This commit does not add a `PropertyConstraint` analogous to
`AttrConstraint`, but this is a natural evolution of the work here.

This commit also adds the concrete property kinds `I32Property`,
`I64Property`, `UnitProperty` (and special handling for it like for
UnitAttr), and `BoolProperty`.

## Property combinators

`Properties.td` also now includes several ways to combine properties.

One is `ArrayProperty<Property elem>`, which now stores a
variable-length array of some property as
`SmallVector<elem.storageType>` and uses `ArrayRef<elem.storageType>` as
its interface type. It has `IntArrayProperty` subclasses that change its
conversion to attributes to use `DenseI[N]Attr`s instead of an
`ArrayAttr`.

Similarly, `OptionalProperty<Property p>` wraps a property's storage in
`std::optional<>` and adds a `std::nullopt` default value. In the case
where the underlying property can be parsed optionally but doesn't have
its own default value, `OptionalProperty` can piggyback off the optional
parser to produce a cleaner syntax, as opposed to its general form,
which is either `none` or `some<[value]>`.

(Note that `OptionalProperty` can be nested if desired).

  ## Autogeneration changes

Operations and adaptors now support getters and setters for properties
like those for attributes. Unlike for attributes, there aren't separate
value and attribute forms, since there is no `FooAttr()` available for a
`getFooAttr()` to return.

The largest change is to operation formats. Previously, properties could
only be used in custom directives. Now, they can be used anywhere an
attribute could be used, and have parsers and printers defined in their
tablegen records.

These updates include special `UnitProperty` logic like that used for
`UnitAttr`.

## Misc.

Some attempt has been made to test the new functionality.

This commit takes tentative steps towards updating the documentation to
account for properties. A full update will be in order once any followup
work has been completed and the interfaces have stabilized.

---------

Co-authored-by: Mehdi Amini <joker.eph at gmail.com>
Co-authored-by: Christian Ulmann <christianulmann at gmail.com>


  Commit: 3113bfbfa7c6247dae2ae52d90b0487f7e31f33e
      https://github.com/llvm/llvm-project/commit/3113bfbfa7c6247dae2ae52d90b0487f7e31f33e
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

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

  Log Message:
  -----------
  AMDGPU/GlobalISel: Use getSubRegFromChannel (#100732)


  Commit: 3c2ce7088886a22ab8dc0e9488600c43644b5102
      https://github.com/llvm/llvm-project/commit/3c2ce7088886a22ab8dc0e9488600c43644b5102
  Author: Tom Stellard <tstellar at redhat.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M .github/workflows/release-sources.yml

  Log Message:
  -----------
  workflows: Fix tag name for release sources job (#100752)


  Commit: 862d837e483437b33f5588f89e62085de3a806b9
      https://github.com/llvm/llvm-project/commit/862d837e483437b33f5588f89e62085de3a806b9
  Author: Michael Maitland <michaeltmaitland at gmail.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/SDPatternMatch.h
    M llvm/unittests/CodeGen/SelectionDAGPatternMatchTest.cpp

  Log Message:
  -----------
   [DAG] Add SDPatternMatch::m_Select (#100686)

This will enable us to use SDPatternMatch with ISD::SELECT SDNodes in
 the future.


  Commit: 599de135551cdb95a479b7f1f032aff506effeac
      https://github.com/llvm/llvm-project/commit/599de135551cdb95a479b7f1f032aff506effeac
  Author: Rainer Orth <ro at gcc.gnu.org>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M clang/lib/Lex/PPMacroExpansion.cpp

  Log Message:
  -----------
  [clang] Handle tm mangling on Solaris in PPMacroExpansion.cpp (#100724)

The introduction of `std::put_time` in
fad17b43dbc09ac7e0a95535459845f72c2b739a broke the Solaris build:
```
Undefined			first referenced
 symbol  			    in file
_ZNKSt8time_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE3putES3_RSt8ios_basecPKSt2tmPKcSB_ lib/libclangLex.a(PPMacroExpansion.cpp.o)
ld: fatal: symbol referencing errors
```
As discussed in PR #99075, the problem is that GCC mangles `std::tm` as
`tm` on Solaris for binary compatility, while `clang` doesn't (Issue
#33114).

As a stop-gap measure, this patch introduces an `asm` level alias to the
same effect.

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


  Commit: e603df083be3d41680c6289bce549b022dcfe7d5
      https://github.com/llvm/llvm-project/commit/e603df083be3d41680c6289bce549b022dcfe7d5
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M clang/tools/clang-nvlink-wrapper/ClangNVLinkWrapper.cpp
    M clang/tools/clang-nvlink-wrapper/NVLinkOpts.td

  Log Message:
  -----------
  [NvlinkWrapper] Add relocatable link support to LTO pass

Summary:
We need `-r` to work so we can preserve symbols.


  Commit: 21fd52f8c7cbaa231b104d15363b28c8f89963c5
      https://github.com/llvm/llvm-project/commit/21fd52f8c7cbaa231b104d15363b28c8f89963c5
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M libcxx/CMakeLists.txt
    R libcxx/cmake/Modules/CodeCoverage.cmake
    M libcxx/src/CMakeLists.txt
    M libcxx/test/CMakeLists.txt

  Log Message:
  -----------
  [libc++] Remove unmaintained support for generating code coverage (#100630)

This patch removes support for generating code coverage information of
libc++, which is unmaintained and I've never been able to utilize. It
would be great to have support for generating code coverage in the test
suite, however this incarnation of it doesn't seem to be properly hooked
up into the test suite. Since it gets in the way of making the test
suite more standalone, remove it.


  Commit: fda692beab2963fd4659dcef0d129a1ff1bde17f
      https://github.com/llvm/llvm-project/commit/fda692beab2963fd4659dcef0d129a1ff1bde17f
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M libcxx/test/CMakeLists.txt

  Log Message:
  -----------
  [libc++] Remove outdated setting of LIBCXX_CXX_ABI_LIBRARY_PATH (#100631)

LIBCXX_CXX_ABI_LIBRARY_PATH is used to determine the path of the ABI
library in use. It shouldn't be necessary to set it explicitly in order
to run the tests, since the test suite has its own configuration
mechanism.


  Commit: ed8c561170b0fb98284ebbfaaab305e87a4d8bf9
      https://github.com/llvm/llvm-project/commit/ed8c561170b0fb98284ebbfaaab305e87a4d8bf9
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M llvm/lib/Target/X86/X86SchedBroadwell.td
    M llvm/lib/Target/X86/X86SchedHaswell.td
    M llvm/test/tools/llvm-mca/X86/Broadwell/resources-mmx.s
    M llvm/test/tools/llvm-mca/X86/Haswell/resources-mmx.s

  Log Message:
  -----------
  [X86] haswell/broadwell only uses port5 for mmx pack reg-reg instructions

Matches numbers from uops.info, Agner and instlatx64.


  Commit: a48222451d0fa966a78880fecbeee0201fbcc039
      https://github.com/llvm/llvm-project/commit/a48222451d0fa966a78880fecbeee0201fbcc039
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M llvm/lib/Target/X86/X86SchedSandyBridge.td
    M llvm/test/tools/llvm-mca/X86/Barcelona/resources-sse2.s
    M llvm/test/tools/llvm-mca/X86/Barcelona/zero-idioms.s
    M llvm/test/tools/llvm-mca/X86/Generic/resources-sse2.s
    M llvm/test/tools/llvm-mca/X86/SandyBridge/resources-sse2.s
    M llvm/test/tools/llvm-mca/X86/SandyBridge/zero-idioms.s

  Log Message:
  -----------
  [X86] Add missing PSUBQ handling to SandyBridge model

Matches PADDQ modelling, confirmed with numbers from uops.info and Agner


  Commit: 6808e6c78edf63d2c0c9bd6fce168fe7e0a7d49f
      https://github.com/llvm/llvm-project/commit/6808e6c78edf63d2c0c9bd6fce168fe7e0a7d49f
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M libcxx/cmake/caches/Generic-no-exceptions.cmake
    M libcxx/cmake/caches/Generic-no-experimental.cmake
    M libcxx/cmake/caches/Generic-no-filesystem.cmake
    M libcxx/cmake/caches/Generic-no-localization.cmake
    M libcxx/cmake/caches/Generic-no-random_device.cmake
    M libcxx/cmake/caches/Generic-no-rtti.cmake
    M libcxx/cmake/caches/Generic-no-threads.cmake
    M libcxx/cmake/caches/Generic-no-tzdb.cmake
    M libcxx/cmake/caches/Generic-no-unicode.cmake
    M libcxx/cmake/caches/Generic-no-wide-characters.cmake
    M libcxx/include/__thread/thread.h
    M libcxx/test/std/atomics/atomics.ref/required_alignment.pass.cpp

  Log Message:
  -----------
  [libc++] Enable Clang modules in carve-out CI jobs (#100571)

This speeds up the CI a bit (anecdotally ~10%) for those jobs, and it
also helps ensure that we are clean w.r.t. Clang modules when we disable
some of the carve-outs like no-localization or no-threads.


  Commit: 1e1c8d16153a8b3f53b6a8797a77112ecc289551
      https://github.com/llvm/llvm-project/commit/1e1c8d16153a8b3f53b6a8797a77112ecc289551
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/test/Transforms/SLPVectorizer/X86/reduced-gathered-vectorized.ll
    M llvm/test/Transforms/SLPVectorizer/X86/vec_list_bias_external_insert_shuffled.ll

  Log Message:
  -----------
  [SLP]Add external uses cost for the gathered loads.

If the load is a part of the gather node and also a part of the
vectorized subvector, need to add the estimation for the non-vectorized
external uses.

Reviewers: RKSimon

Reviewed By: RKSimon

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


  Commit: f083764ba1ca35016c929683c8a5d918b5048100
      https://github.com/llvm/llvm-project/commit/f083764ba1ca35016c929683c8a5d918b5048100
  Author: Dmitry Vasilyev <dvassiliev at accesssoftek.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

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

  Log Message:
  -----------
  [lldb] Optimized lldb-server memory usage (#100666)

MAX_PATH is definitely larger than 6 bytes we are expecting for this
message, and could be rather large depending on the target OS (4K for
some Linux OSs).

Since the buffer gets allocated on the stack we better be conservative
and allocate what we actually need.


  Commit: 73450251497f3880ff90d36d2bb43f02dd022239
      https://github.com/llvm/llvm-project/commit/73450251497f3880ff90d36d2bb43f02dd022239
  Author: Santhosh Kumar Ellendula <quic_sellendu at quicinc.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M lldb/tools/lldb-dap/README.md
    M lldb/tools/lldb-dap/package.json

  Log Message:
  -----------
  [lldb-dap] Updated README.md for newly added attach properties. (#99926)

Added "gdb-remote-port" and "gdb-remote-hostname" attach properties
usage in
README.md and updated package.json version to 0.2.3
    
This was missed in PR https://github.com/llvm/llvm-project/pull/91570

---------

Co-authored-by: Santhosh Kumar Ellendula <sellendu at hu-sellendu-hyd.qualcomm.com>
Co-authored-by: Santhosh Kumar Ellendula <sellendu at hu-sellendu-lv.qualcomm.com>


  Commit: 50835f0a364e850e097c40f81364909c72bb2156
      https://github.com/llvm/llvm-project/commit/50835f0a364e850e097c40f81364909c72bb2156
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M clang/lib/Driver/ToolChains/AMDGPU.cpp
    M clang/test/Driver/amdgpu-toolchain.c

  Log Message:
  -----------
  [Clang] Do not pass `-shared` when using `-r` for AMDGPU (#100760)

Summary:
We can use `-r` and `--lto-emit-llvm` to get the LTO pass to optimize +
link LLVM-IR. Currently this doesn't work on AMDGPU because it always
passes `-shared` which is incompatible with `-r`. Fix that so we can use
it.


  Commit: 6ac0cf9fb0b8c3efe1a6583247102786bd223ca5
      https://github.com/llvm/llvm-project/commit/6ac0cf9fb0b8c3efe1a6583247102786bd223ca5
  Author: Doug Wyatt <doug at sonosphere.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M clang/include/clang/AST/Type.h

  Log Message:
  -----------
  [NFC] Reduce size of FunctionEffect to 1 byte. (#100753)

As a preliminary to PR https://github.com/llvm/llvm-project/pull/99656 ,
reduce the size of `FunctionEffect` to 1 byte.

---------

Co-authored-by: Doug Wyatt <dwyatt at apple.com>


  Commit: 11a7ee50b400fc13cf772c81e09c153c93665658
      https://github.com/llvm/llvm-project/commit/11a7ee50b400fc13cf772c81e09c153c93665658
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp
    M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.h

  Log Message:
  -----------
  [lldb][TypeSystemClang][NFC] Clean up TypeSystemClang::GetBitSize (#100674)

This patch performs following NFC changes to
TypeSystemClang::GetBitSize:
* Factor out the Objective-C logic into a helper function.
* Introduce a new case for `FunctionProto`. I don't see a good reason
for special-casing this in the `default` case.
* We had a redundant check for `GetCompleteType` in the `RecordType`
case. We used to allow zero-size types for records and function
prototypes, so we can just fold them into the same case.
* Introduce a new case for `IncompleteArray`.

The motivation for this is that there are a few issues around VLAs
(i.e., `Type::IncompleteArray`) whose fixes will be easier to reason
about after this refactor.

Generally I don't think treating a type with 0 size as an error is the
right thing to do (at least not for array types). But that's not
something I wanted to fold into this NFC change.


  Commit: 4084e31d3369521615c706a3995566aa7165be97
      https://github.com/llvm/llvm-project/commit/4084e31d3369521615c706a3995566aa7165be97
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M clang/lib/Driver/ToolChains/Clang.cpp

  Log Message:
  -----------
  [Driver] Use hasArg to fix -Wunused-but-set-variable after #97342


  Commit: 5579569ae76873c346e1a1c8a55dc448f8a346ad
      https://github.com/llvm/llvm-project/commit/5579569ae76873c346e1a1c8a55dc448f8a346ad
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp
    M llvm/test/CodeGen/X86/known-bits.ll

  Log Message:
  -----------
  [LegalizeTypes] Create an ISD::ADD instead of an ISD::UADDO with unused overflow result. (#100647)

Same for ISD::SUB instead of ISD::USUBO.


  Commit: 9086f9df6bc212a1594bc12634428362b6564408
      https://github.com/llvm/llvm-project/commit/9086f9df6bc212a1594bc12634428362b6564408
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVFeatures.td
    M llvm/lib/Target/RISCV/RISCVProcessors.td

  Log Message:
  -----------
  [RISCV] Remove feature implication from TuneSiFive7. (#100694)

Add all the implied feature directly to the SiFive7 CPUs tuning feature
list instead.

The implication is dangerous because explicitly disalbing any of the
implied features through the command line would also clear the SiFive7
feature bit.


  Commit: b582b658d60fb23ce39c48b42be265093e5e889d
      https://github.com/llvm/llvm-project/commit/b582b658d60fb23ce39c48b42be265093e5e889d
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vfw-web-simplification.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vfwmacc.ll

  Log Message:
  -----------
  [RISCV] Add FMA support to combineOp_VLToVWOp_VL. (#100454)

This adds FMA to the widening web support we have for add, sub, mul, and
shl.

Extra care needs to be taken to not widen the third FMA operand.


  Commit: ba45453c0a5df3e6c3eddee647e14c97e02243fa
      https://github.com/llvm/llvm-project/commit/ba45453c0a5df3e6c3eddee647e14c97e02243fa
  Author: darkbuck <michael.hliao at gmail.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
    A llvm/test/Transforms/SimplifyCFG/AMDGPU/skip-threading.ll
    M llvm/test/Transforms/SimplifyCFG/convergent.ll

  Log Message:
  -----------
  [SimplifyCFG] Skip threading if the target may have divergent branches

- This patch skips the threading on known values if the target has
  divergent branch.
- So far, threading on known values is skipped when the basic block has
  covergent calls. However, even without convergent calls, if that
  condition is divergent, threading duplicates the execution of that
  block threaded and hence results in lower performance. E.g.,
  ```
  BB1:
    if (cond) BB3, BB2

  BB2:
    // work2
    br BB3

  BB3:
    // work3
    if (cond) BB5, BB4

  BB4:
    // work4
    br BB5

  BB5:
  ```

  after threading,

  ```
  BB1:
    if (cond) BB3', BB2'

  BB2':
    // work3
    br BB5

  BB3':
    // work2
    // work3
    // work4
    br BB5

  BB5:

  ```

  After threading, work3 is executed twice if 'cond' is a divergent one.

Reviewers: yxsamliu, nikic

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


  Commit: 9ff6c35a7e50c906537f085c0d2488ea4836dcc5
      https://github.com/llvm/llvm-project/commit/9ff6c35a7e50c906537f085c0d2488ea4836dcc5
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M llvm/include/llvm/ADT/DenseMap.h

  Log Message:
  -----------
  [DenseMap] clear: don't access TombstoneKey if is_trivially_destructible


  Commit: d2553a2be985d76874a52b44bab9438c01aead50
      https://github.com/llvm/llvm-project/commit/d2553a2be985d76874a52b44bab9438c01aead50
  Author: Mark de Wever <koraq at xs4all.nl>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M libcxx/docs/Status/Cxx20Issues.csv
    M libcxx/docs/Status/Cxx23Issues.csv
    M libcxx/docs/Status/Cxx2cIssues.csv

  Log Message:
  -----------
  [libc++][doc] Updates the libc++ status page. (#100595)

- LWG3147 Definitions of "likely" and "unlikely" are likely to cause
problems Adjusts the requirements on programs using the Standard
library.

- LWG3328 Clarify that std::string is not good for UTF-8 Adds a
non-normative note, aimed at users of the Standard library.

- LWG3784 std.compat should not provide ::byte and its friends was
implemented during modules.

- LWG3062 Unnecessary decay_t in is_execution_policy_v should be
remove_cvref_t Was implemented while implementing parallel algorithms.

- LWG3362 Strike stop_source's operator!= The removed operator was never
implemented.

- LWG3616 LWG 3498 seems to miss the non-member swap for basic_syncbuf
This was implemented correctly from the start.

- LWG3199 istream >> bitset<0> fails This was implemented in
fc4486c2472b84384d4a31d2436a91bdb9b29792, might be in LLVM-9

- LWG3828 Sync intmax_t and uintmax_t with C2x Standardardized existing
practice.

- LWG3713 Sorted with respect to comparator (only) Wording issue in the
Standard.

- LWG3823 Unnecessary precondition for is_aggregate Changes the
preconditions

- LWG3826 Redundant specification [for overload of yield_value] Changes
a remark to a note

- LWG3203 span element access invalidation Update wording relevant for
users of the Standard library.


  Commit: 04133283a9f5a15fba810ed34ff445d61203fcce
      https://github.com/llvm/llvm-project/commit/04133283a9f5a15fba810ed34ff445d61203fcce
  Author: Mike Rice <michael.p.rice at intel.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

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

  Log Message:
  -----------
  [clang][Sema][NFC] remove unreachable return statement (#100642)

The switch now returns in every case so the end return is unreachable.


  Commit: 9d2461e71297899b3d23dcfa002fcabaf6709612
      https://github.com/llvm/llvm-project/commit/9d2461e71297899b3d23dcfa002fcabaf6709612
  Author: Tom Stellard <tstellar at redhat.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    A .github/workflows/release-asset-audit.py
    A .github/workflows/release-asset-audit.yml

  Log Message:
  -----------
  workflows: Add a job for auditing release assets (#92829)

This checks to ensure that uploads are only made by 'approved'
uploaders, which is just everyone who has uploaded a release asset in
the past.

We could do more, but this is just a simple implementation so we can put
something in place and see how it works.

For more discussion see:
https://discourse.llvm.org/t/rfc-improve-binary-security/78121


  Commit: bd80655da407c0becca2b7e6ac0264c625272b70
      https://github.com/llvm/llvm-project/commit/bd80655da407c0becca2b7e6ac0264c625272b70
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M llvm/test/Instrumentation/HWAddressSanitizer/pgo-opt-out.ll

  Log Message:
  -----------
  [NFC][hwasan] Remove duplicated checks



Reviewers: kstoimenov, thurstond

Reviewed By: thurstond

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


  Commit: 48260799a5e4eab59e7637ed8eea5034da4370e7
      https://github.com/llvm/llvm-project/commit/48260799a5e4eab59e7637ed8eea5034da4370e7
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M llvm/test/Transforms/lower-builtin-allow-check.ll

  Log Message:
  -----------
  [NFC][ubsan] Add mixed filter test case (#100679)

Currently "random" overrides "hotness",
we need to make them work together.


  Commit: 16975ad27c5cd36ed136a3de739221304da125d2
      https://github.com/llvm/llvm-project/commit/16975ad27c5cd36ed136a3de739221304da125d2
  Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M flang/lib/Semantics/check-cuda.cpp
    M flang/test/Lower/CUDA/cuda-data-transfer.cuf
    M flang/test/Lower/CUDA/cuda-kernel-loop-directive.cuf
    M flang/test/Parser/cuf-sanity-common
    M flang/test/Semantics/cuf09.cuf
    M flang/test/Semantics/reduce.cuf

  Log Message:
  -----------
  [flang][cuda] Emit error when host array is used in CUF kernel (#100693)

Restriction from the standard 2.11.2.

Arrays used or assigned in the loop must have the device, managed or
unifed attribute.


  Commit: b5f2db20d6403923f31313763c592a20c12527ff
      https://github.com/llvm/llvm-project/commit/b5f2db20d6403923f31313763c592a20c12527ff
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M llvm/docs/ProgrammersManual.rst

  Log Message:
  -----------
  [docs] Fix code-block formating (#100772)


  Commit: d683d378998c85c12d7f0549944f807bb44c7b76
      https://github.com/llvm/llvm-project/commit/d683d378998c85c12d7f0549944f807bb44c7b76
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M llvm/test/Transforms/lower-builtin-allow-check.ll

  Log Message:
  -----------
  [NFC][ubsan] Expand lower-builtin-allow-check test (#100677)


  Commit: 481eb4f5159b753497ef20cb646eb6169f3eb078
      https://github.com/llvm/llvm-project/commit/481eb4f5159b753497ef20cb646eb6169f3eb078
  Author: Haojian Wu <hokein.wu at gmail.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Basic/DiagnosticSemaKinds.td

  Log Message:
  -----------
  [clang] Enable the -Wdangling-assignment-gsl diagnostic by default. (#100708)


  Commit: ca69f515fe29fa98b7ab52e49c5b401bb22f64f6
      https://github.com/llvm/llvm-project/commit/ca69f515fe29fa98b7ab52e49c5b401bb22f64f6
  Author: Martin Storsjö <martin at martin.st>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M libcxx/test/std/localization/locale.categories/category.numeric/locale.nm.put/facet.num.put.members/put_double.hex.pass.cpp
    M libcxx/test/std/localization/locale.categories/category.numeric/locale.nm.put/facet.num.put.members/put_long_double.hex.pass.cpp
    M libcxx/utils/libcxx/test/features.py
    M libcxxabi/test/test_demangle.pass.cpp

  Log Message:
  -----------
  [libcxx] [test] Detect the UCRT printf("%a") formatting bug (#99846)

This fixes testing with MinGW, if built without
__USE_MINGW_ANSI_STDIO=1.

On x86 MinGW, such a configuration fails printf tests with long doubles
due to mismatches between 80 and 64 bit long doubles - but on ARM,
there's no such issue, so building without __USE_MINGW_ANSI_STDIO=1 is
perfectly valid there.

Add another similar XFAIL to a libcxxabi test; this test isn't executed
in MSVC environments, so no XFAIL has been needed so far.


  Commit: 599a91a7df6b75f93b91507e0caedd8dd1996641
      https://github.com/llvm/llvm-project/commit/599a91a7df6b75f93b91507e0caedd8dd1996641
  Author: Angel Zhang <anzhouzhang913 at gmail.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

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

  Log Message:
  -----------
  [mlir][spirv] Support `vector.step` in vector to spirv conversion (#100651)

Added a conversion pattern and LIT tests for lowering `vector.step` to
SPIR-V.
Fixes: #100602

---------

Co-authored-by: Jakub Kuderski <kubakuderski at gmail.com>


  Commit: 3e593b9b3b86ebf28e24c3a33791be49e0735af5
      https://github.com/llvm/llvm-project/commit/3e593b9b3b86ebf28e24c3a33791be49e0735af5
  Author: Kendal Harland <3987220+kendalharland at users.noreply.github.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M lldb/packages/Python/lldbsuite/test/lldbplatformutil.py
    M lldb/packages/Python/lldbsuite/test/lldbtest.py

  Log Message:
  -----------
  [lldb] Remove python helper getCompilerBinary() (#100660)

This causes a number of tests be `UNRESOLVED` on Windows if
`getCompiler()` has a space in the name, because `getCompilerBinary()`
unconditionally splits on whitespace and returns the first result, which
might just be`"C:\Program"` if using a compiler such as `clang-cl` `cl`
from the absolute path to Visual studio's installation directory.

Co-authored-by: kendal <kendal at thebrowser.company>


  Commit: 60e5892e6928dec29306e5749e70ac9e26e1f6c5
      https://github.com/llvm/llvm-project/commit/60e5892e6928dec29306e5749e70ac9e26e1f6c5
  Author: Tom Stellard <tstellar at redhat.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M .github/workflows/release-asset-audit.yml

  Log Message:
  -----------
  Workflows: Fix copy-paste mistake in release-asset-audit

The comment file in this workflow is plain-text not json.


  Commit: 761372ef1563f9f14f43afd800d4d017a3472c99
      https://github.com/llvm/llvm-project/commit/761372ef1563f9f14f43afd800d4d017a3472c99
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-constant.mir

  Log Message:
  -----------
  AMDGPU/GlobalISel: Add some more select of pointer typed constant tests


  Commit: cc1dfb37aa84d1524243b83fadb8ff0f821e03e9
      https://github.com/llvm/llvm-project/commit/cc1dfb37aa84d1524243b83fadb8ff0f821e03e9
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M libcxx/include/__atomic/atomic_ref.h
    A libcxx/test/std/atomics/atomics.lockfree/is_always_lock_free.cpp
    R libcxx/test/std/atomics/atomics.lockfree/isalwayslockfree.pass.cpp
    M libcxx/test/std/atomics/atomics.ref/is_always_lock_free.pass.cpp
    M libcxx/test/support/atomic_helpers.h

  Log Message:
  -----------
  [libc++] Fix bug in atomic_ref's calculation of lock_free-ness (#99570)

The builtin __atomic_always_lock_free takes into account the type of the
pointer provided as the second argument. Because we were passing void*,
rather than T*, the calculation failed. This meant that
atomic_ref<T>::is_always_lock_free was only true for char & bool.

This bug exists elsewhere in the atomic library (when using GCC, we fail
to pass a pointer at all, and we fail to correctly align the atomic like
_Atomic would).

This change also attempts to start sorting out testing difficulties with
this function that caused the bug to exist by using the 
__GCC_ATOMIC_(CHAR|SHORT|INT|LONG|LLONG|POINTER)_IS_LOCK_FREE predefined
macros to establish an expected value for `is_always_lock_free` and 
`is_lock_free` for the respective types, as well as types with matching 
sizes and compatible alignment values.

Using these compiler pre-defines we can actually validate that certain
types, like char and int, are actually always lock free like they are on
every platform in the wild.

Note that this patch was actually authored by Eric Fiselier but I picked 
up the patch and GitHub won't let me set Eric as the primary author.

Co-authored-by: Eric Fiselier <eric at efcs.ca>


  Commit: 372a6beac65851abe6d8016df397f5cea32ffe9b
      https://github.com/llvm/llvm-project/commit/372a6beac65851abe6d8016df397f5cea32ffe9b
  Author: vporpo <vporpodas at google.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

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

  Log Message:
  -----------
  [SandboxIR] Implement CallBase and CallInst (#100218)

This patch adds the `CallBase` SandboxIR class and its subclass:
`CallInst`. Both are mirrors of `llvm::CallBase` and `llvm::CallInst`
respectively. Since `llvm::CallBase` contains a large number of member
functions so this patch implements only some of them.

The `CallBase` unit tests uncovered an issue with the class hierarchy,
where `sandboxir::Function` was not a subclass of `sandboxir::Constant`,
so this was fixed.

Testing tracking of the `CallBase` setters showed that
`sandboxir::Use::set()` was not being tracked. So this is also part of
this patch.


  Commit: f8cd4c505fd9c0be329630b6b82e3a3ff53107cc
      https://github.com/llvm/llvm-project/commit/f8cd4c505fd9c0be329630b6b82e3a3ff53107cc
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M libc/cmake/modules/LLVMLibCLibraryRules.cmake
    M libc/cmake/modules/prepare_libc_gpu_build.cmake
    M libc/lib/CMakeLists.txt

  Log Message:
  -----------
  [libc] Fix building bitcode library for GPU (#100491)

Summary:
The GPU build provides a bitcode version of the library to mimic how
NVIDIA and AMD provide their libraries. Previously we had the fatbinary
archive that created the necessary dependency for this to actually
build. Since it was removed we no longer had anything triggering this to
build.

I have no idea if there's a better way to force a custom command to
actually be run in the same space as libraries, but the only thing I
could come up with was a dummy target.


  Commit: 247251aee0d4314385a3fea86e31484d3d792ffb
      https://github.com/llvm/llvm-project/commit/247251aee0d4314385a3fea86e31484d3d792ffb
  Author: Tom Stellard <tstellar at redhat.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    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-tasks.yml
    M clang/cmake/caches/Release.cmake

  Log Message:
  -----------
  Build release binaries for multiple targets (#98431)

This adds release binary builds for the 4 platforms currently supported
by the free GitHub Action runners:

* Linux x86_64
* Windows x86_64
* Mac x86_64
* Mac AArch64

The test stages for these are known to fail, but the creating and
upoading of the release binaries should pass.


  Commit: 134b4484d8dda0ea75d9cf971ffc2f44e18fcead
      https://github.com/llvm/llvm-project/commit/134b4484d8dda0ea75d9cf971ffc2f44e18fcead
  Author: RoseZhang03 <rosezhang at google.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M libc/docs/dev/header_generation.rst
    M llvm/docs/GettingStarted.rst

  Log Message:
  -----------
  [libc] Updated GettingStarted.rst with PyYAML version (#100649)

New Headergen requires PyYAML version 5.1 or newer in order to generate
header files .


  Commit: 361d4cf5331d76d5ea5ddef48ea35e2515e870b6
      https://github.com/llvm/llvm-project/commit/361d4cf5331d76d5ea5ddef48ea35e2515e870b6
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
    M llvm/test/CodeGen/X86/is_fpclass.ll

  Log Message:
  -----------
  DAG: Lower is.fpclass fcSubnormal|fcZero to fabs(x) < smallest_normal (#100390)

Produces better code on x86_64 only in the unordered case. Not
sure what the exact condition should be to avoid the regression. Free
fabs might do it, or maybe requires legality checks for the alternative
integer expansion.


  Commit: c80c09f3e380a0a2b00b36bebf72f43271a564c1
      https://github.com/llvm/llvm-project/commit/c80c09f3e380a0a2b00b36bebf72f43271a564c1
  Author: Dimitry Andric <dimitry at andric.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M llvm/include/llvm/Support/MathExtras.h
    M llvm/lib/CodeGen/CalcSpillWeights.cpp
    A llvm/test/CodeGen/X86/pr99396.ll

  Log Message:
  -----------
  [CalcSpillWeights] Avoid x87 excess precision influencing weight result

Fixes #99396

The result of `VirtRegAuxInfo::weightCalcHelper` can be influenced by
x87 excess precision, which can result in slightly different register
choices when the compiler is hosted on x86_64 or i386. This leads to
different object file output when cross-compiling to i386, or native.

Similar to 7af3432e22b0, we need to add a `volatile` qualifier to the
local `Weight` variable to force it onto the stack, and avoid the excess
precision. Define `stack_float_t` in `MathExtras.h` for this purpose,
and use it.


  Commit: 09542052351380a455bb23a28df86b80db461eb2
      https://github.com/llvm/llvm-project/commit/09542052351380a455bb23a28df86b80db461eb2
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M llvm/lib/Transforms/Instrumentation/HWAddressSanitizer.cpp
    M llvm/lib/Transforms/Instrumentation/LowerAllowCheckPass.cpp
    M llvm/test/Instrumentation/HWAddressSanitizer/pgo-opt-out.ll
    M llvm/test/Transforms/lower-builtin-allow-check.ll

  Log Message:
  -----------
  [ubsan][hwasan] Let mixing filters (#100680)

Now the check will be enabled only if each filter is satisfied.


  Commit: 2c391a5902446a19603873ecb4dc12ecf0f01e1c
      https://github.com/llvm/llvm-project/commit/2c391a5902446a19603873ecb4dc12ecf0f01e1c
  Author: Philip Reames <preames at rivosinc.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M llvm/test/Analysis/CostModel/RISCV/rvv-load-store.ll

  Log Message:
  -----------
  [RISCV] Add <X x i1> cost model coverage for load/store


  Commit: 18dee70168bcd7259daade4c86462ba859e7bed5
      https://github.com/llvm/llvm-project/commit/18dee70168bcd7259daade4c86462ba859e7bed5
  Author: Tom Stellard <tstellar at redhat.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M .github/workflows/release-binaries.yml

  Log Message:
  -----------
  workflows: Remove left over debugging step from release-binaries job


  Commit: d3fd28a13478786b3ebf092b8ebfcfd0c5e34928
      https://github.com/llvm/llvm-project/commit/d3fd28a13478786b3ebf092b8ebfcfd0c5e34928
  Author: Philip Reames <preames at rivosinc.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
    M llvm/test/Analysis/CostModel/RISCV/rvv-load-store.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/short-trip-count.ll

  Log Message:
  -----------
  [RISCV][TTI] Properly model odd vector sized LD/ST operations (#100436)

The motivation for this change is the costing of a LD or ST with nearly
power of 2 vectors (e.g. <3 x i32> or <7 x i32>) on V. There's an
experimental option in SLP to allow emitting these if the cost model
says they're profitable. This really helps with e.g. RGB vectors.

Our actual lowering for these depends on whether a wider container type
is known available. If so, we use a vle or vse on the wider type with a
restricted VL. If not, we split until a legal type is found, and then
apply the vle/vse on the sub-pieces.

This change is intentionally restricted to only the case where promotion
(widening w/VL predication) is involved. We appear to have at least one
bug in our splitting lowering (see discussion on review), and to avoid
exposing this more widely, I chose to not adjust costs for the splitting
case. The current splitting costing assumes scalarization (which is not
true of the actual lowering), but that has the effect of biasing
vectorization away from such cases strongly.

For the widening case, the true cost scales with the next largest legal
type. The default implementation assumes that such a type is scalarized.
Changing that brings our cost in line with our actual lowering decision.
Note that since scalarization is not possible for scalable types, the
prior costing falsely returned Invalid for that case.


  Commit: 7f3dcf4b2e1001c829ec431996d4ee2662a229fa
      https://github.com/llvm/llvm-project/commit/7f3dcf4b2e1001c829ec431996d4ee2662a229fa
  Author: Mircea Trofin <mtrofin at google.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M llvm/tools/llvm-ctxprof-util/CMakeLists.txt
    M llvm/tools/llvm-ctxprof-util/llvm-ctxprof-util.cpp

  Log Message:
  -----------
  [ctx_prof] Don't use `GENERATE_DRIVER` (#100777)


  Commit: 53283dc4645ee13f33dd9b98cc935b376bf78232
      https://github.com/llvm/llvm-project/commit/53283dc4645ee13f33dd9b98cc935b376bf78232
  Author: Daniil Kovalev <dkovalev at accesssoftek.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M llvm/test/CodeGen/AArch64/ptrauth-fpac.ll
    M llvm/test/CodeGen/AArch64/ptrauth-intrinsic-auth-resign-with-blend.ll
    M llvm/test/CodeGen/AArch64/ptrauth-intrinsic-auth-resign.ll

  Log Message:
  -----------
  [PAC][test] Add tests against Linux triples for auth/resign lowering (#100744)

The lowering implementation and tests against arm64e-apple-darwin triple
were added previously in #79024.


  Commit: 745aa48165dae85dd30d964d0ade8e533df034ee
      https://github.com/llvm/llvm-project/commit/745aa48165dae85dd30d964d0ade8e533df034ee
  Author: Julius Alexandre <61852278+medievalghoul at users.noreply.github.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

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

  Log Message:
  -----------
  [SandboxIR] Implement isVolatile() for LoadInst (#100717)


  Commit: 7ebd97b852b7535d22f93a90e7627853ffe7f0e1
      https://github.com/llvm/llvm-project/commit/7ebd97b852b7535d22f93a90e7627853ffe7f0e1
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M offload/DeviceRTL/src/Debug.cpp
    M offload/test/libc/assert.c

  Log Message:
  -----------
  [OpenMP] Do not define '__assert_fail' if we have the GPU libc (#100409)

Summary:
The C library is intended to provide `__assert_fail`, so in the cases
that we have both we should defer to that. This means that if you build
the C library for GPUs you'll get the RPC based asser, and if not you'll
get the trap based one.


  Commit: 5a9b9ef66084c84fe4cbe71f0bace82498b13def
      https://github.com/llvm/llvm-project/commit/5a9b9ef66084c84fe4cbe71f0bace82498b13def
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

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

  Log Message:
  -----------
  [VPlan] Remove now redundant VF assertion.

The assertion was added in preparation for
https://github.com/llvm/llvm-project/pull/9882. Remove assertion now
the PR has landed.


  Commit: efd13eb305dcc394cd038d6c332df64e96276baa
      https://github.com/llvm/llvm-project/commit/efd13eb305dcc394cd038d6c332df64e96276baa
  Author: Vasileios Porpodas <vporpodas at google.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

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

  Log Message:
  -----------
  [SandboxIR][NFC] Remove trailing whitespaces


  Commit: 26d92826a5ed7894fb6d604c8e0e755daa50cdf7
      https://github.com/llvm/llvm-project/commit/26d92826a5ed7894fb6d604c8e0e755daa50cdf7
  Author: khaki3 <47756807+khaki3 at users.noreply.github.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M flang/lib/Optimizer/Builder/FIRBuilder.cpp
    M flang/test/Lower/OpenACC/acc-loop.f90
    M mlir/include/mlir/Dialect/OpenACC/CMakeLists.txt
    M mlir/include/mlir/Dialect/OpenACC/OpenACC.h
    M mlir/include/mlir/Dialect/OpenACC/OpenACCOps.td
    A mlir/include/mlir/Dialect/OpenACC/OpenACCOpsInterfaces.td
    M mlir/lib/Dialect/OpenACC/IR/CMakeLists.txt
    M mlir/lib/Dialect/OpenACC/IR/OpenACC.cpp
    M mlir/lib/Dialect/OpenACC/Transforms/CMakeLists.txt

  Log Message:
  -----------
  [mlir][flang] Add an interface of OpenACC compute regions for further getAllocaBlock support (#100675)

This PR implements `ComputeRegionOpInterface` to define `getAllocaBlock`
of OpenACC loop and compute constructs (parallel/kernels/serial). The
primary objective here is to accommodate local variables in OpenACC
compute regions. The change in `fir::FirOpBuilder::getAllocaBlock`
allows local variable allocation inside loops and kernels.


  Commit: 069e8bcd82c4420239f95c7e6a09e1f756317cfc
      https://github.com/llvm/llvm-project/commit/069e8bcd82c4420239f95c7e6a09e1f756317cfc
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M clang/lib/CodeGen/CGBuiltin.cpp
    M clang/lib/CodeGen/CGGPUBuiltin.cpp
    M clang/lib/CodeGen/CodeGenFunction.h
    M libc/config/gpu/entrypoints.txt
    M libc/spec/gpu_ext.td
    M libc/src/gpu/CMakeLists.txt
    R libc/src/gpu/rpc_fprintf.cpp
    R libc/src/gpu/rpc_fprintf.h
    M llvm/lib/Target/AMDGPU/AMDGPUPrintfRuntimeBinding.cpp
    M offload/DeviceRTL/include/LibC.h
    M offload/DeviceRTL/src/LibC.cpp

  Log Message:
  -----------
  [OpenMP][libc] Remove special handling for OpenMP printf (#98940)

Summary:
Currently there are several layers to handle `printf`. Since we now have
varargs and an implementation of `printf` this can be heavily
simplified.

1. The frontend renames `printf` into `omp_vprintf` and gives it an
   argument buffer.

Removing 1. triggered some code in the AMDGPU backend menat for HIP /
OpenCL, so I hadded an exception to it.

2. Forward this to CUDA vprintf or ignore it.

We no longer need special handling for it since we have varargs. So now
we just forward this to CUDA vprintf if we have libc, otherwise just
leave `printf` as an external function and expect that `libc` will be
linked in.


  Commit: b33ef5bd68ca142775ab653c84f0cb5448a8a0f2
      https://github.com/llvm/llvm-project/commit/b33ef5bd68ca142775ab653c84f0cb5448a8a0f2
  Author: Sayhaan Siddiqui <49014204+sayhaan at users.noreply.github.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M bolt/lib/Rewrite/DWARFRewriter.cpp

  Log Message:
  -----------
  [BOLT][DWARF][NFC] Add mc opt to DWARFRewriter.cpp (#100800)

Running into an error with removing DWP where the assertion
`RelaxAllView &&
"RegisterMCTargetOptionsFlags not created."'` failed. This is a result
of DWP bringing the mc::RegisterMCTargetOptionsFlags option in, and the
option being removed with DWP. The need for this option didn't
originally exist because we didn't use MC in DWARFRewriter, but we
switched to using DWARFStreamer which needed the option.

https://reviews.llvm.org/D75579 
https://reviews.llvm.org/D106417


  Commit: 1978c21d967a2cd2e11cd3b2147d135f4d9e680b
      https://github.com/llvm/llvm-project/commit/1978c21d967a2cd2e11cd3b2147d135f4d9e680b
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M lld/ELF/ScriptLexer.cpp
    M lld/ELF/ScriptLexer.h
    M lld/ELF/ScriptParser.cpp
    M lld/test/ELF/linkerscript/invalid.test
    M lld/test/ELF/linkerscript/map-file.test
    M lld/test/ELF/linkerscript/map-file2.test
    M lld/test/ELF/linkerscript/unquoted.test

  Log Message:
  -----------
  [ELF] ScriptLexer: generate tokens lazily

The current tokenize-whole-file approach has a few limitations.

* Lack of state information: `maybeSplitExpr` is needed to parse
  expressions. It's infeasible to add new states to behave more like GNU
  ld.
* `readInclude` may insert tokens in the middle, leading to a time
  complexity issue with N-nested `INCLUDE`.
* line/column information for diagnostics are inaccurate, especially
  after an `INCLUDE`.
* `getLineNumber` cannot be made more efficient without significant code
  complexity and memory consumption. https://reviews.llvm.org/D104137

The patch switches to a traditional lexer that generates tokens lazily.

* `atEOF` behavior is modified: we need to call `peek` to determine EOF.
* `peek` and `next` cannot call `setError` upon `atEOF`.
* Since `consume` no longer reports an error upon `atEOF`, the idiom `while (!errorCount() && !consume(")"))`
  would cause a dead loop. Use `while (peek() != ")" && !atEOF()) { ... } expect(")")` instead.
* An include stack is introduced to handle `readInclude`. This can be
  utilized to address #93947 properly.
* `tokens` and `pos` are removed.
* `commandString` is reimplemented. Since it is used in -Map output,
  `\n` needs to be replaced with space.

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


  Commit: fea5914c926e2f013a8b5e27eaa74c7047fb2c71
      https://github.com/llvm/llvm-project/commit/fea5914c926e2f013a8b5e27eaa74c7047fb2c71
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M clang/lib/CodeGen/CGBuiltin.cpp
    M clang/lib/CodeGen/CGGPUBuiltin.cpp
    M clang/lib/CodeGen/CodeGenFunction.h
    M libc/config/gpu/entrypoints.txt
    M libc/spec/gpu_ext.td
    M libc/src/gpu/CMakeLists.txt
    A libc/src/gpu/rpc_fprintf.cpp
    A libc/src/gpu/rpc_fprintf.h
    M llvm/lib/Target/AMDGPU/AMDGPUPrintfRuntimeBinding.cpp
    M offload/DeviceRTL/include/LibC.h
    M offload/DeviceRTL/src/LibC.cpp

  Log Message:
  -----------
  Revert "[OpenMP][libc] Remove special handling for OpenMP printf (#98940)"

This reverts commit 069e8bcd82c4420239f95c7e6a09e1f756317cfc.

Summary:
Some tests failing, revert this for now.


  Commit: b0860b20878d2c84fc3ce56ea608c5186872faa2
      https://github.com/llvm/llvm-project/commit/b0860b20878d2c84fc3ce56ea608c5186872faa2
  Author: Tom Stellard <tstellar at redhat.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M .github/workflows/release-binaries.yml

  Log Message:
  -----------
  workflows/release-binaries: Always pull composite actions from main branch (#100805)

If we pull from the release tag, then if there is a bug in one of the
actions on the release tag, then we can never do a build for that tag.
Pulling from main will allows us to fix bugs in the actions we use to
build the releases.


  Commit: d41f565318e2a414acfd7eec1cfb2fbf515391ba
      https://github.com/llvm/llvm-project/commit/d41f565318e2a414acfd7eec1cfb2fbf515391ba
  Author: Tom Stellard <tstellar at redhat.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M .github/workflows/release-binaries.yml

  Log Message:
  -----------
  workflow/release-binaries: Fix typo

Introduced in b0860b20878d2c84fc3ce56ea608c5186872faa2.


  Commit: db2aa50ec4a9f47d2710cdae1608ef99de4b5ed3
      https://github.com/llvm/llvm-project/commit/db2aa50ec4a9f47d2710cdae1608ef99de4b5ed3
  Author: vporpo <vporpodas at google.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

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

  Log Message:
  -----------
  [SandboxIR] Implement InvokeInst (#100796)

This patch implements sandboxir::InvokeInst which mirrors
llvm::InvokeInst.


  Commit: dbb8b7a0f4eea1aa333cec9a38aa6eb7ecf6c1dc
      https://github.com/llvm/llvm-project/commit/dbb8b7a0f4eea1aa333cec9a38aa6eb7ecf6c1dc
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M clang/lib/CodeGen/CGBuiltin.cpp
    M clang/lib/CodeGen/CGGPUBuiltin.cpp
    M clang/lib/CodeGen/CodeGenFunction.h
    R clang/test/OpenMP/nvptx_target_printf_codegen.c
    M libc/config/gpu/entrypoints.txt
    M libc/spec/gpu_ext.td
    M libc/src/gpu/CMakeLists.txt
    R libc/src/gpu/rpc_fprintf.cpp
    R libc/src/gpu/rpc_fprintf.h
    M llvm/lib/Target/AMDGPU/AMDGPUPrintfRuntimeBinding.cpp
    M offload/DeviceRTL/include/LibC.h
    M offload/DeviceRTL/src/LibC.cpp

  Log Message:
  -----------
  Reapply "[OpenMP][libc] Remove special handling for OpenMP printf (#98940)"

This reverts commit fea5914c926e2f013a8b5e27eaa74c7047fb2c71.


  Commit: 0ff92593d2d8f35c99332471ef6c42df997341aa
      https://github.com/llvm/llvm-project/commit/0ff92593d2d8f35c99332471ef6c42df997341aa
  Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M flang/include/flang/Evaluate/tools.h

  Log Message:
  -----------
  [flang][cuda][NFC] Extract is cuda device attribute logic (#100809)


  Commit: 06429a4fbc6c49c9cd1a68da2e2728ec66ddaddf
      https://github.com/llvm/llvm-project/commit/06429a4fbc6c49c9cd1a68da2e2728ec66ddaddf
  Author: Keith Smiley <keithbsmiley at gmail.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

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

  Log Message:
  -----------
  [bazel] Port 26d92826a5ed7894fb6d604c8e0e755daa50cdf7 (#100829)


  Commit: 4f5ad22b95ba2ee44f6207fc71b81860a48854ef
      https://github.com/llvm/llvm-project/commit/4f5ad22b95ba2ee44f6207fc71b81860a48854ef
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    R lld/test/ELF/linkerscript/header-phdr.test
    R lld/test/ELF/linkerscript/phdr-check.s
    M lld/test/ELF/linkerscript/phdrs.s

  Log Message:
  -----------
  [ELF,test] Improve PHDRS tests


  Commit: 6cf1ea99c6c022bf2ca59362775ba36aaa688d79
      https://github.com/llvm/llvm-project/commit/6cf1ea99c6c022bf2ca59362775ba36aaa688d79
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M lld/test/ELF/linkerscript/memory-err.s
    M lld/test/ELF/linkerscript/overlay.test
    M lld/test/ELF/linkerscript/phdrs.s
    M lld/test/ELF/linkerscript/sections.s

  Log Message:
  -----------
  [ELF,test] Improve unclosed tests


  Commit: c901b739b67476b00209b7ee706de94c0595d763
      https://github.com/llvm/llvm-project/commit/c901b739b67476b00209b7ee706de94c0595d763
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVMergeBaseOffset.cpp
    M llvm/test/CodeGen/RISCV/inline-asm-mem-constraint.ll

  Log Message:
  -----------
  [RISCV] Don't crash in RISCVMergeBaseOffset if INLINE_ASM uses address register in a non-memory constraint. (#100790)

If the register is used by a non-memory constraint we should disable the
fold. Otherwise, we may leave CommonOffset unassigned.

Fixes #100779.


  Commit: 2a89356d64a274f7171b45d8b7b05b6315a6f627
      https://github.com/llvm/llvm-project/commit/2a89356d64a274f7171b45d8b7b05b6315a6f627
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M lld/ELF/ScriptLexer.cpp
    M lld/ELF/ScriptLexer.h
    M lld/ELF/ScriptParser.cpp
    M lld/test/ELF/linkerscript/phdrs.s
    M lld/test/ELF/linkerscript/sections.s

  Log Message:
  -----------
  [ELF] Add till and rewrite while (... consume("}"))

After #100493, the idiom `while (!errorCount() && !consume("}"))` could
lead to inaccurate diagnostics or dead loops. Introduce till to change
the code pattern.


  Commit: 10bb296dfcefcb13fdead32e35822767e59c70da
      https://github.com/llvm/llvm-project/commit/10bb296dfcefcb13fdead32e35822767e59c70da
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M lld/ELF/ScriptParser.cpp

  Log Message:
  -----------
  [ELF] Replace some while (peek() != ")" && !atEOF()) with till


  Commit: 497e2e8cf8d27d0488b089757f1569c4c7d8635e
      https://github.com/llvm/llvm-project/commit/497e2e8cf8d27d0488b089757f1569c4c7d8635e
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M llvm/test/Transforms/VectorCombine/X86/load-inseltpoison.ll
    M llvm/test/Transforms/VectorCombine/X86/load-widening.ll

  Log Message:
  -----------
  [NFC][VectorCombine] Add negative sanitizer tests (#100832)

They are already work as expected.


  Commit: 5f3758530ab86b0dff2890b36fe1a040083fc4ab
      https://github.com/llvm/llvm-project/commit/5f3758530ab86b0dff2890b36fe1a040083fc4ab
  Author: Nico Weber <thakis at chromium.org>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M llvm/utils/gn/secondary/llvm/tools/llvm-ctxprof-util/BUILD.gn

  Log Message:
  -----------
  [gn] port 7f3dcf4b2e10 (llvm-ctxprof-util no driver)


  Commit: cd354e37ab76828ed3f02b63f7d0c0c006f38564
      https://github.com/llvm/llvm-project/commit/cd354e37ab76828ed3f02b63f7d0c0c006f38564
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M llvm/test/Transforms/SROA/phi-with-duplicate-pred.ll

  Log Message:
  -----------
  [NFC][SROA] Regenerate a test

New update_test_checks.py use a difference spacing.


  Commit: b32c38ab5b4cf5c66469180ba3594e98eff2c124
      https://github.com/llvm/llvm-project/commit/b32c38ab5b4cf5c66469180ba3594e98eff2c124
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M lld/ELF/ScriptParser.cpp

  Log Message:
  -----------
  [ELF] Replace some while (peek() != ")" && !atEOF()) with till


  Commit: 47aea6162457aa816d8349bef571e9fdcd651a5c
      https://github.com/llvm/llvm-project/commit/47aea6162457aa816d8349bef571e9fdcd651a5c
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M llvm/test/Transforms/InstCombine/multiple-uses-load-bitcast-select.ll

  Log Message:
  -----------
  [NFC] Fix upate_test_checks warning


  Commit: a09c0f676d3c61ba8f74a24172543c1e44d70628
      https://github.com/llvm/llvm-project/commit/a09c0f676d3c61ba8f74a24172543c1e44d70628
  Author: jameshu15869 <55058507+jameshu15869 at users.noreply.github.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M libc/benchmarks/gpu/LibcGpuBenchmark.cpp
    M libc/benchmarks/gpu/LibcGpuBenchmark.h

  Log Message:
  -----------
  [libc] Add Minimum Time and Iterations, Reduce Epsilon (#100838)

This PR adds minimums (50 iterations, 500 us, and epsilon of 0.0001) to
ensure that all benchmarks run at least a set number of times before
outputting a final measurement.


  Commit: 558315a0ea8cae8613c3a0061bc6cbe50c5b392f
      https://github.com/llvm/llvm-project/commit/558315a0ea8cae8613c3a0061bc6cbe50c5b392f
  Author: Shivam Gupta <shivam98.tkg at gmail.com>
  Date:   2024-07-27 (Sat, 27 Jul 2024)

  Changed paths:
    M lldb/source/Commands/CommandObjectTarget.cpp

  Log Message:
  -----------
  [LLDB] Remove the redundent 'properties' variable (#95675)

This is described in (N3) https://pvs-studio.com/en/blog/posts/cpp/1126/

Warning message -
V547 Expression 'properties ++ > 0' is always false.
CommandObjectTarget.cpp:100

I could not understand it properly but the properties++ operation is
performed twice when the target architecture is valid.
First increment seems unnecessary since it is always false '0>0'.

---------

Co-authored-by: xgupta <shivma98.tkg at gmail.com>


  Commit: 9a3e66e314e698ffb08dba151bc098b6b8867c61
      https://github.com/llvm/llvm-project/commit/9a3e66e314e698ffb08dba151bc098b6b8867c61
  Author: Sayhaan Siddiqui <49014204+sayhaan at users.noreply.github.com>
  Date:   2024-07-26 (Fri, 26 Jul 2024)

  Changed paths:
    M bolt/include/bolt/Core/DebugData.h
    M bolt/lib/Core/DIEBuilder.cpp
    M bolt/lib/Core/DebugData.cpp
    M bolt/lib/Rewrite/DWARFRewriter.cpp
    A bolt/test/X86/dwarf5-df-larger-batch-size.test

  Log Message:
  -----------
  [BOLT][DWARF][NFC] Fix DebugStrOffsetsWriter (#100672)

Fix DebugStrOffsetsWriter so updateAddressMap can't be called after it
is finalized.


  Commit: 13996378d81c8fa9a364aeaafd7382abbc1db83a
      https://github.com/llvm/llvm-project/commit/13996378d81c8fa9a364aeaafd7382abbc1db83a
  Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
  Date:   2024-07-27 (Sat, 27 Jul 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/lib/Target/RISCV/RISCVISelLowering.h
    M llvm/lib/Target/RISCV/RISCVInstrInfoD.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoF.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoZfh.td
    M llvm/test/CodeGen/RISCV/double-arith.ll
    M llvm/test/CodeGen/RISCV/float-arith.ll
    M llvm/test/CodeGen/RISCV/half-arith.ll

  Log Message:
  -----------
  [RISCV][ISel] Fold FSGNJX idioms (#100718)

This patch folds `fmul X, (fcopysign 1.0, Y)` into `fsgnjx X, Y`. This
pattern exists in some graphics applications/math libraries.
Alive2: https://alive2.llvm.org/ce/z/epyL33

Since fpimm +1.0 is lowered to a load from constant pool after
OpLegalization, I have to introduce a new RISCVISD node FSGNJX and fold
this pattern in DAGCombine.

Closes https://github.com/dtcxzyw/llvm-opt-benchmark/issues/1072.


  Commit: 299c700a22460edb7bb6fe937cd23a5b823d4081
      https://github.com/llvm/llvm-project/commit/299c700a22460edb7bb6fe937cd23a5b823d4081
  Author: wr7 <winterred7 at gmail.com>
  Date:   2024-07-27 (Sat, 27 Jul 2024)

  Changed paths:
    M llvm/include/llvm-c/Target.h

  Log Message:
  -----------
  [llvm-c][documentation] fix typo in `LLVMSizeOfTypeInBits` (#100839)

`LLVMSizeOfTypeInBits`:
- `Computes the size of a type in bytes for a target` -> `Computes the
size of a type in bits for a target`


  Commit: fe07d9aa410518c5b631a065ddc5782a623af030
      https://github.com/llvm/llvm-project/commit/fe07d9aa410518c5b631a065ddc5782a623af030
  Author: Andrzej Warzyński <andrzej.warzynski at arm.com>
  Date:   2024-07-27 (Sat, 27 Jul 2024)

  Changed paths:
    M mlir/lib/Dialect/ArmSME/Transforms/OuterProductFusion.cpp
    M mlir/lib/Dialect/ArmSME/Transforms/VectorLegalization.cpp
    M mlir/lib/Dialect/Vector/Utils/VectorUtils.cpp

  Log Message:
  -----------
  [mlir][vector] Switch to using `getNumScalableDims` (nfc) (#100806)


  Commit: f2d2ae3f5a8e45c1386bf71e403d78cfee52cb7b
      https://github.com/llvm/llvm-project/commit/f2d2ae3f5a8e45c1386bf71e403d78cfee52cb7b
  Author: David Green <david.green at arm.com>
  Date:   2024-07-27 (Sat, 27 Jul 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/test/Transforms/PhaseOrdering/AArch64/slpordering.ll
    M llvm/test/Transforms/SLPVectorizer/AArch64/loadorder.ll

  Log Message:
  -----------
  [SLP] Order clustered load base pointers by ascending offsets (#100653)

This attempts to fix a regression from #98025, where the new order of
reduction nodes causes later passes to not be able to produce as nice
shuffles. The issue boils down to picking an order of [0 1 3 2] for
loaded v4i8 values, which meant later parts could not find a simpler
ordering for the shuffles given the legal nodes available in AArch64. If
instead we make sure they are ordered [0 1 2 3] then everything can fall
into place.

In order to produce a better order that is more likely to work in more
cases, this patch takes the existing clustered loads and sort the base
pointers if there is an order between them. i.e if `V2 == gep (V1, X)`
then V1 is sorted before V2.


  Commit: 66ce4f771ee294fc4a2e0ead86976fc731ff5d87
      https://github.com/llvm/llvm-project/commit/66ce4f771ee294fc4a2e0ead86976fc731ff5d87
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-07-27 (Sat, 27 Jul 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorizationPlanner.h
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/test/Transforms/LoopVectorize/AArch64/scalable-alloca.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/scalable-call.ll

  Log Message:
  -----------
  [VPlan] Port invalid cost remarks to VPlan. (#99322)

This patch moves the logic to create remarks for instructions with
invalid costs to work on recipes and decoupling it from
selectVectorizationFactor. This is needed to replace the remaining uses
of selectVectorizationFactor with getBestPlan using the VPlan-based cost
model.

The current implementation iterates over all VPlans and their recipes
again, to find recipes with invalid costs, which is more work but will
only be done when remarks for LV are enabled. Once the remaining uses of
selectVectorizationFactor are retired, we can collect VPlans with
invalid costs as part of getBestPlan if we want to optimize the remarks
case a bit, at the cost of adding additional complexity.

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


  Commit: 79afb94da1c508e90945df2f05d9cf80d2942ba1
      https://github.com/llvm/llvm-project/commit/79afb94da1c508e90945df2f05d9cf80d2942ba1
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-07-27 (Sat, 27 Jul 2024)

  Changed paths:
    M libc/benchmarks/gpu/CMakeLists.txt
    M libc/cmake/modules/LLVMLibCTestRules.cmake

  Log Message:
  -----------
  [libc] Make NVPTX benchmarks use LTO for linking

Summary:
Now that we can do LTO, we can make the benchmarks more accurate by
allowing optimization + inlining of the implementation.


  Commit: ae4f2495a460d973e471626fb6fdaeec6d5c494e
      https://github.com/llvm/llvm-project/commit/ae4f2495a460d973e471626fb6fdaeec6d5c494e
  Author: Benjamin Kramer <benny.kra at googlemail.com>
  Date:   2024-07-27 (Sat, 27 Jul 2024)

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

  Log Message:
  -----------
  [IR] Verifier: Use a SmallPtrSet for a small set of pointers. NFC


  Commit: ea98dc8b8f508b8393651992830e5e51d3876728
      https://github.com/llvm/llvm-project/commit/ea98dc8b8f508b8393651992830e5e51d3876728
  Author: Jacek Caban <jacek at codeweavers.com>
  Date:   2024-07-27 (Sat, 27 Jul 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Basic/Attr.td
    M clang/include/clang/Basic/AttrDocs.td
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/lib/CodeGen/CodeGenFunction.cpp
    M clang/lib/Sema/SemaDecl.cpp
    M clang/lib/Sema/SemaDeclAttr.cpp
    A clang/test/CodeGen/arm64ec-hybrid-patchable.c
    M clang/test/Misc/pragma-attribute-supported-attributes-list.test

  Log Message:
  -----------
  [clang][ARM64EC] Add support for hybrid_patchable attribute. (#99478)


  Commit: e83ba1e9ebda4f757c0738b21ffd9eafcf2be3b1
      https://github.com/llvm/llvm-project/commit/e83ba1e9ebda4f757c0738b21ffd9eafcf2be3b1
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-07-27 (Sat, 27 Jul 2024)

  Changed paths:
    M llvm/test/CodeGen/AArch64/exp10-libcall-names.ll
    M llvm/test/CodeGen/X86/exp10-libcall-names.ll

  Log Message:
  -----------
  [Darwin] Add exp10(f) tests for BridgeOS & Driverkit.


  Commit: 154d00d5d0416c42388d6e82cac96fbc091101d2
      https://github.com/llvm/llvm-project/commit/154d00d5d0416c42388d6e82cac96fbc091101d2
  Author: Nathan James <n.james93 at hotmail.co.uk>
  Date:   2024-07-27 (Sat, 27 Jul 2024)

  Changed paths:
    M clang-tools-extra/clang-tidy/add_new_check.py
    M clang-tools-extra/test/clang-tidy/check_clang_tidy.py

  Log Message:
  -----------
  Extend support for specifying languages and version in add_new_check.py (#100129)

- Allow specifying a language standard when adding a new check
- Simplify the language standards(and or-later) handlnig in
check_clang_tidy


  Commit: 803eaf29267c6aae9162d1a83a4a2ae508b440d3
      https://github.com/llvm/llvm-project/commit/803eaf29267c6aae9162d1a83a4a2ae508b440d3
  Author: Vladislav Khmelevsky <och95 at yandex.ru>
  Date:   2024-07-27 (Sat, 27 Jul 2024)

  Changed paths:
    M bolt/test/AArch64/dummy-return.s

  Log Message:
  -----------
  [BOLT][NFC] Fix test requirement (#100867)

Tests that are using instrumentation should have bolt-runtime in
requirements


  Commit: 1e8df9e85a1ff213e5868bd822877695f27504ad
      https://github.com/llvm/llvm-project/commit/1e8df9e85a1ff213e5868bd822877695f27504ad
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2024-07-27 (Sat, 27 Jul 2024)

  Changed paths:
    M llvm/tools/llvm-exegesis/lib/BenchmarkRunner.cpp

  Log Message:
  -----------
  [llvm-exegesis] Use correct rseq struct size (#100804)

Glibc v2.40 changes the definition of __rseq_size to the usable area of
the struct rather than the actual size of the struct to accommodate
users trying to figure out what features can be used. This change breaks
llvm-exegesis trying to disable rseq as the size registered in the
kernel is no longer equal to __rseq_size. This patch adds a check to see
if __rseq_size is less than 32 bytes and uses 32 as a value if it is
given alignment requirements.

Fixes #100791.


  Commit: 6efc3774bd8c5fcb105cda73ec27c05ef850dc19
      https://github.com/llvm/llvm-project/commit/6efc3774bd8c5fcb105cda73ec27c05ef850dc19
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-27 (Sat, 27 Jul 2024)

  Changed paths:
    M lld/ELF/ICF.cpp
    M lld/ELF/InputSection.cpp
    M lld/ELF/InputSection.h
    M lld/ELF/Relocations.cpp
    M lld/ELF/Relocations.h
    M lld/ELF/SyntheticSections.cpp
    M lld/ELF/SyntheticSections.h

  Log Message:
  -----------
  [ELF] Add Relocs and invokeOnRelocs. NFC

Relocs is to simplify CREL support (#98115) while invokeOnRelocs
simplifies some relsOrRelas call sites that will use the CREL iterator.


  Commit: c7231e49099d56fdc5b2207142184a0bf2544ec1
      https://github.com/llvm/llvm-project/commit/c7231e49099d56fdc5b2207142184a0bf2544ec1
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-27 (Sat, 27 Jul 2024)

  Changed paths:
    M lld/ELF/InputSection.cpp

  Log Message:
  -----------
  [ELF] Use invokeOnRelocs. NFC


  Commit: bccff3baeff8164af56e2deee03a0faee93710d0
      https://github.com/llvm/llvm-project/commit/bccff3baeff8164af56e2deee03a0faee93710d0
  Author: Med Ismail Bennani <ismail at bennani.ma>
  Date:   2024-07-27 (Sat, 27 Jul 2024)

  Changed paths:
    M lldb/include/lldb/Core/PluginManager.h
    M lldb/include/lldb/Interpreter/Interfaces/ScriptedInterface.h
    A lldb/include/lldb/Interpreter/Interfaces/ScriptedInterfaceUsages.h
    M lldb/include/lldb/lldb-private-interfaces.h
    M lldb/source/Commands/CommandObjectScripting.cpp
    M lldb/source/Commands/Options.td
    M lldb/source/Core/PluginManager.cpp
    M lldb/source/Interpreter/CMakeLists.txt
    A lldb/source/Interpreter/Interfaces/CMakeLists.txt
    A lldb/source/Interpreter/Interfaces/ScriptedInterfaceUsages.cpp
    M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/CMakeLists.txt
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedThreadPlanPythonInterface.cpp
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedThreadPlanPythonInterface.h
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedThreadPlanPythonInterface/CMakeLists.txt
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedThreadPlanPythonInterface/ScriptedThreadPlanPythonInterface.cpp
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedThreadPlanPythonInterface/ScriptedThreadPlanPythonInterface.h
    M lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp

  Log Message:
  -----------
  [lldb/Commands] Add `scripting template list` command with auto discovery

This patch introduces a new `template` multiword sub-command to the
`scripting` top-level command. As the name suggests, this sub-command
operates on scripting templates, and currently has the ability to
automatically discover the various scripting extensions that lldb
supports.

This was previously reviewed in #97273.

Signed-off-by: Med Ismail Bennani <ismail at bennani.ma>


  Commit: f1a7d146e002e109ac8776c9ed7ddd078b6d4247
      https://github.com/llvm/llvm-project/commit/f1a7d146e002e109ac8776c9ed7ddd078b6d4247
  Author: Hongyu Chen <hongyc4 at uci.edu>
  Date:   2024-07-27 (Sat, 27 Jul 2024)

  Changed paths:
    M lld/ELF/ScriptParser.cpp

  Log Message:
  -----------
  [ELF] Updated some while conditions with till (#100893)

This change is based on
[commit](https://github.com/llvm/llvm-project/commit/b32c38ab5b4cf5c66469180ba3594e98eff2c124)
for a cleaner API usage. Thanks to @MaskRay !


  Commit: ecf125eaf0b10f18f4ef27f0ebc20f6ab8108247
      https://github.com/llvm/llvm-project/commit/ecf125eaf0b10f18f4ef27f0ebc20f6ab8108247
  Author: Med Ismail Bennani <ismail at bennani.ma>
  Date:   2024-07-27 (Sat, 27 Jul 2024)

  Changed paths:
    M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/CMakeLists.txt
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedPlatformPythonInterface.cpp
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedPlatformPythonInterface.h
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedPlatformPythonInterface/CMakeLists.txt
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedPlatformPythonInterface/ScriptedPlatformPythonInterface.cpp
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedPlatformPythonInterface/ScriptedPlatformPythonInterface.h
    M lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp

  Log Message:
  -----------
  [lldb] Add ScriptedPlatform to `scripting template list`

This patch is a follow-up to bccff3baeff8 which adds the
`ScriptedPlatform` extension to the `scripting template list` command as
well as its description.

Signed-off-by: Med Ismail Bennani <ismail at bennani.ma>


  Commit: 9328c20cc80c4fb8dc86c3141e1be1739e07b3fc
      https://github.com/llvm/llvm-project/commit/9328c20cc80c4fb8dc86c3141e1be1739e07b3fc
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-27 (Sat, 27 Jul 2024)

  Changed paths:
    M lld/ELF/ScriptLexer.cpp
    M lld/ELF/ScriptLexer.h
    M lld/test/ELF/linkerscript/overlay.test
    M lld/test/ELF/linkerscript/sections.s

  Log Message:
  -----------
  [ELF] Track line number precisely

`getLineNumber` is both imprecise (when `INCLUDE` is used) and
inefficient (see https://reviews.llvm.org/D104137). Track line number
precisely now that we have `struct Buffer` abstraction from #100493.


  Commit: 995f643f5aa73d0b73199417b0c87acc07dd44bd
      https://github.com/llvm/llvm-project/commit/995f643f5aa73d0b73199417b0c87acc07dd44bd
  Author: Med Ismail Bennani <ismail at bennani.ma>
  Date:   2024-07-27 (Sat, 27 Jul 2024)

  Changed paths:
    M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/CMakeLists.txt
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/OperatingSystemPythonInterface.cpp
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/OperatingSystemPythonInterface.h
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/OperatingSystemPythonInterface/CMakeLists.txt
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/OperatingSystemPythonInterface/OperatingSystemPythonInterface.cpp
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/OperatingSystemPythonInterface/OperatingSystemPythonInterface.h
    M lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp

  Log Message:
  -----------
  [lldb] Add OperatingSystem to `scripting template list`

This patch is a follow-up to bccff3baeff8 which adds the
`OperatingSystem` extension to the `scripting template list` command as
well as its description.

Signed-off-by: Med Ismail Bennani <ismail at bennani.ma>


  Commit: 745de9ef2071d9702343faf738b48381d83a0e00
      https://github.com/llvm/llvm-project/commit/745de9ef2071d9702343faf738b48381d83a0e00
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2024-07-27 (Sat, 27 Jul 2024)

  Changed paths:
    R compiler-rt/test/builtins/Unit/ppc/test
    R compiler-rt/test/builtins/Unit/test

  Log Message:
  -----------
  [compiler-rt] Delete unused test shell scripts (#100889)

This patch deletes two shell scripts in compiler-rt/builtiins/Unit that
seemed to have been used to run the tests at some point, but not
anymore.

They were originally copied over in
8c1441f86037d62f8e164cc458dff8b91d015998,
but have only been updated once since in what seemed like a simple grep.

These files also got lit testing support about seven years ago in
9b7bbeca48b10a0eb81708650777703ce41e67d7 that I believe makes these
scripts completely redundant.


  Commit: edcc60e403703904fcb1425f31a9c20ab0d90f43
      https://github.com/llvm/llvm-project/commit/edcc60e403703904fcb1425f31a9c20ab0d90f43
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-27 (Sat, 27 Jul 2024)

  Changed paths:
    M lld/ELF/ScriptParser.cpp

  Log Message:
  -----------
  [ELF] Simplify readAssignment

After #100493, the `=` support from
fe0de25b2195b66d1ebac5d3ebdb18f9e1e776da can be simplified.


  Commit: 30ec2bf58d1559b161254118e39271b829fd0867
      https://github.com/llvm/llvm-project/commit/30ec2bf58d1559b161254118e39271b829fd0867
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-27 (Sat, 27 Jul 2024)

  Changed paths:
    M lld/ELF/ScriptParser.cpp
    M lld/test/ELF/gc-sections-with-provide.s
    M lld/test/ELF/linkerscript/symbolreferenced.s

  Log Message:
  -----------
  [ELF] PROVIDE: allow quoted names to be discarded

Extend commit ebb326a51fec37b5a47e5702e8ea157cd4f835cd for (#74771) to
support quoted names, e.g. `PROVIDE("f1" = f2 + f3);`.


  Commit: c89566f317d6db9e798f9d74c309921e47205901
      https://github.com/llvm/llvm-project/commit/c89566f317d6db9e798f9d74c309921e47205901
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-27 (Sat, 27 Jul 2024)

  Changed paths:
    M lld/ELF/ScriptParser.cpp

  Log Message:
  -----------
  [ELF] Replace unquote(next()) with readName. NFC


  Commit: 74ef53a01a49e3818ac872e1cb7669c8017f0eb0
      https://github.com/llvm/llvm-project/commit/74ef53a01a49e3818ac872e1cb7669c8017f0eb0
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-27 (Sat, 27 Jul 2024)

  Changed paths:
    M lld/ELF/ScriptParser.cpp
    M lld/test/ELF/linkerscript/region-alias.s

  Log Message:
  -----------
  [ELF] REGION_ALIAS: support quoted names


  Commit: e6895154914adf32fc4d805cffdf0bec084ae711
      https://github.com/llvm/llvm-project/commit/e6895154914adf32fc4d805cffdf0bec084ae711
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-27 (Sat, 27 Jul 2024)

  Changed paths:
    M lld/ELF/ScriptParser.cpp
    M lld/test/ELF/linkerscript/overlay.test

  Log Message:
  -----------
  [ELF] OVERLAY: support quoted output section names


  Commit: 0d8bc10acb46f5c7af3a7df3e5550c0fef3cc8b5
      https://github.com/llvm/llvm-project/commit/0d8bc10acb46f5c7af3a7df3e5550c0fef3cc8b5
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-27 (Sat, 27 Jul 2024)

  Changed paths:
    M lld/ELF/ScriptParser.cpp
    M lld/test/ELF/linkerscript/at2.test
    M lld/test/ELF/linkerscript/at3.test

  Log Message:
  -----------
  [ELF] Memory region: support quoted names


  Commit: 74f843d05f89738fe58170cedfd15496c179f57a
      https://github.com/llvm/llvm-project/commit/74f843d05f89738fe58170cedfd15496c179f57a
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-27 (Sat, 27 Jul 2024)

  Changed paths:
    M lld/ELF/ScriptParser.cpp

  Log Message:
  -----------
  [ELF] Replace unquote(next()) with readName. NFC


  Commit: dbd65a07f212c6e85059b12ae3359942fcaee292
      https://github.com/llvm/llvm-project/commit/dbd65a07f212c6e85059b12ae3359942fcaee292
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-27 (Sat, 27 Jul 2024)

  Changed paths:
    M lld/ELF/ScriptParser.cpp
    M lld/test/ELF/linkerscript/outputarch.test

  Log Message:
  -----------
  [ELF] OUTPUT_ARCH: report unclosed error


  Commit: 4ad3deeefc6c7cd2b1248d6b06c6888618210093
      https://github.com/llvm/llvm-project/commit/4ad3deeefc6c7cd2b1248d6b06c6888618210093
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-27 (Sat, 27 Jul 2024)

  Changed paths:
    M lld/test/ELF/linkerscript/phdrs.s

  Log Message:
  -----------
  [ELF] PHDRS: test EOF without ;


  Commit: aad2238f786c0bd8deade0dc68cfc3811c7633df
      https://github.com/llvm/llvm-project/commit/aad2238f786c0bd8deade0dc68cfc3811c7633df
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-27 (Sat, 27 Jul 2024)

  Changed paths:
    M lld/test/ELF/linkerscript/include-cycle.s

  Log Message:
  -----------
  [ELF] Improve INCLUDE cycle tests

And demonstrate the incorrect diagnostic when a linker script is
included multiple times (#93947).


  Commit: 8f72b0cb08d8b55ef13ed83af8dac2b7ac55208b
      https://github.com/llvm/llvm-project/commit/8f72b0cb08d8b55ef13ed83af8dac2b7ac55208b
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-27 (Sat, 27 Jul 2024)

  Changed paths:
    M lld/ELF/ScriptLexer.cpp
    M lld/ELF/ScriptLexer.h
    M lld/ELF/ScriptParser.cpp
    M lld/test/ELF/linkerscript/include-cycle.s

  Log Message:
  -----------
  [ELF] Fix INCLUDE cycle detection

Fix #93947: the cycle detection mechanism added by
https://reviews.llvm.org/D37524 also disallowed including a file twice,
which is an unnecessary limitation.

Now that we have an include stack #100493, supporting multiple inclusion
is trivial. Note: a filename can be referenced with many different
paths, e.g. a.lds, ./a.lds, ././a.lds. We don't attempt to detect the
cycle in the earliest point.


  Commit: 9bd97fcf1385efea2dc130ee4fa78665fa6c9205
      https://github.com/llvm/llvm-project/commit/9bd97fcf1385efea2dc130ee4fa78665fa6c9205
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-07-27 (Sat, 27 Jul 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVInstrInfoXVentana.td
    M llvm/test/CodeGen/RISCV/condops.ll

  Log Message:
  -----------
  [RISCV] Remove IsRV64 from XVentanaCondOps patterns. (#100891)

Ventana doesn't have RV32 cores so the instructions aren't really
supported for RV32, but there's nothing specifically 64-bit about them.

My goal here is to fix cannot select errors if XVentanaCondOps is
enabled on RV32. Alternatively, we could quality the lowering code to
also check IsRV64 so that we don't create RISCVISD::CZERO* nodes. Fixing
the isel patterns seemed simpler.

Fixes #100855.


  Commit: 2402b3213c2f10d5033b31df3a0e59e4ad151fbd
      https://github.com/llvm/llvm-project/commit/2402b3213c2f10d5033b31df3a0e59e4ad151fbd
  Author: Med Ismail Bennani <ismail at bennani.ma>
  Date:   2024-07-27 (Sat, 27 Jul 2024)

  Changed paths:
    M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/CMakeLists.txt
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedProcessPythonInterface.cpp
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedProcessPythonInterface.h
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedProcessPythonInterface/CMakeLists.txt
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedProcessPythonInterface/ScriptedProcessPythonInterface.cpp
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedProcessPythonInterface/ScriptedProcessPythonInterface.h
    M lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp

  Log Message:
  -----------
  [lldb] Add ScriptedProcess to `scripting template list`

This patch is a follow-up to bccff3baeff8 which adds the
`ScriptedProcess` extension to the `scripting template list` command as
well as its description.

Signed-off-by: Med Ismail Bennani <ismail at bennani.ma>


  Commit: d5521d128494690be66e03a674b9d1181935bf77
      https://github.com/llvm/llvm-project/commit/d5521d128494690be66e03a674b9d1181935bf77
  Author: Julius Alexandre <juliuswoosebert at gmail.com>
  Date:   2024-07-27 (Sat, 27 Jul 2024)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
    A llvm/test/CodeGen/AArch64/avgflooru-i128.ll
    M llvm/test/CodeGen/RISCV/avgflooru.ll
    A llvm/test/CodeGen/X86/avgflooru-i128.ll
    M llvm/test/CodeGen/X86/avgflooru-scalar.ll

  Log Message:
  -----------
  [DAG] Reducing instructions by better legalization handling of AVGFLOORU for illegal data types (#99913)

**Issue:** https://github.com/rust-lang/rust/issues/124790
**Previous PR:** https://github.com/llvm/llvm-project/pull/99614

https://rust.godbolt.org/z/T7eKP3Tvo

**Aarch64:** https://alive2.llvm.org/ce/z/dqr2Kg
**x86:** https://alive2.llvm.org/ce/z/ze88Hw

cc: @RKSimon @topperc


  Commit: 9c16a4a2dc20dda1fc9517fb72d3cc79b62557aa
      https://github.com/llvm/llvm-project/commit/9c16a4a2dc20dda1fc9517fb72d3cc79b62557aa
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-27 (Sat, 27 Jul 2024)

  Changed paths:
    M lld/ELF/ScriptParser.cpp
    M lld/test/ELF/linkerscript/insert-after.test
    M lld/test/ELF/linkerscript/insert-before.test

  Log Message:
  -----------
  [ELF] INSERT [AFTER|BEFORE]: support quoted names


  Commit: a4921f10e09e9aab9aad555115bfe43fe12af29c
      https://github.com/llvm/llvm-project/commit/a4921f10e09e9aab9aad555115bfe43fe12af29c
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-27 (Sat, 27 Jul 2024)

  Changed paths:
    M lld/ELF/ScriptParser.cpp
    M lld/test/ELF/linkerscript/phdrs.s

  Log Message:
  -----------
  [ELF] Output section phdr: support quoted names


  Commit: bbc457a4f40328452f0c8c8f9b0b5fcb8d286a7b
      https://github.com/llvm/llvm-project/commit/bbc457a4f40328452f0c8c8f9b0b5fcb8d286a7b
  Author: Med Ismail Bennani <ismail at bennani.ma>
  Date:   2024-07-27 (Sat, 27 Jul 2024)

  Changed paths:
    M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/CMakeLists.txt
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedProcessPythonInterface.cpp
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedProcessPythonInterface.h
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedProcessPythonInterface/CMakeLists.txt
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedProcessPythonInterface/ScriptedProcessPythonInterface.cpp
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedProcessPythonInterface/ScriptedProcessPythonInterface.h
    M lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp

  Log Message:
  -----------
  Revert "[lldb] Add ScriptedProcess to `scripting template list`"

This reverts commit 2402b3213c2f10d5033b31df3a0e59e4ad151fbd since it
breaks the windows bot:

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


  Commit: fed94333fd54ec6012386b7b7977c3226ebfd2ac
      https://github.com/llvm/llvm-project/commit/fed94333fd54ec6012386b7b7977c3226ebfd2ac
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-07-27 (Sat, 27 Jul 2024)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
    R llvm/test/CodeGen/AArch64/avgflooru-i128.ll
    M llvm/test/CodeGen/RISCV/avgflooru.ll
    R llvm/test/CodeGen/X86/avgflooru-i128.ll
    M llvm/test/CodeGen/X86/avgflooru-scalar.ll

  Log Message:
  -----------
  Revert "[DAG] Reducing instructions by better legalization handling of AVGFLOORU for illegal data types (#99913)"

This reverts commit d5521d128494690be66e03a674b9d1181935bf77.

The AArch64 test is failing on the bots.


  Commit: 315a55fcc342077a3b03c9b4383f41ebea60e2ad
      https://github.com/llvm/llvm-project/commit/315a55fcc342077a3b03c9b4383f41ebea60e2ad
  Author: Nico Weber <thakis at chromium.org>
  Date:   2024-07-27 (Sat, 27 Jul 2024)

  Changed paths:
    M llvm/utils/gn/secondary/lldb/source/Interpreter/BUILD.gn
    A llvm/utils/gn/secondary/lldb/source/Interpreter/Interfaces/BUILD.gn

  Log Message:
  -----------
  Reland "[gn] port enough of 2914a4b88837 (lldb Interfaces)"

This reverts commit 68343d793a089e28f3215c3eaa7e4170442a06f8.
2914a4b88837 relanded in bccff3baeff8.


  Commit: 62e5b6e817cd4d2dd1fd8193453660d77b41acc9
      https://github.com/llvm/llvm-project/commit/62e5b6e817cd4d2dd1fd8193453660d77b41acc9
  Author: Schrodinger ZHU Yifan <yifanzhu at rochester.edu>
  Date:   2024-07-27 (Sat, 27 Jul 2024)

  Changed paths:
    M libc/src/__support/threads/CMakeLists.txt

  Log Message:
  -----------
  [libc] fix pthread build issue for full-build mode (#100912)

Fix a silly typo that stops pthread from being built


  Commit: f8f5b17564cb839101ba99390bcecc564de57e65
      https://github.com/llvm/llvm-project/commit/f8f5b17564cb839101ba99390bcecc564de57e65
  Author: Nhat Nguyen <nhat7203 at gmail.com>
  Date:   2024-07-28 (Sun, 28 Jul 2024)

  Changed paths:
    M libc/hdr/CMakeLists.txt
    A libc/hdr/math_function_macros.h
    M libc/hdr/math_macros.h
    M libc/test/src/math/CopySignTest.h
    M libc/test/src/math/FAbsTest.h
    M libc/test/src/math/FDimTest.h
    M libc/test/src/math/FMaxTest.h
    M libc/test/src/math/FMinTest.h
    M libc/test/src/math/FrexpTest.h
    M libc/test/src/math/ILogbTest.h
    M libc/test/src/math/LogbTest.h
    M libc/test/src/math/ModfTest.h
    M libc/test/src/math/RemQuoTest.h
    M libc/test/src/math/acosf_test.cpp
    M libc/test/src/math/acoshf_test.cpp
    M libc/test/src/math/asinf_test.cpp
    M libc/test/src/math/asinhf_test.cpp
    M libc/test/src/math/atan2f_test.cpp
    M libc/test/src/math/cos_test.cpp
    M libc/test/src/math/cosf_test.cpp
    M libc/test/src/math/coshf_test.cpp
    M libc/test/src/math/erff_test.cpp
    M libc/test/src/math/exp10_test.cpp
    M libc/test/src/math/exp10f_test.cpp
    M libc/test/src/math/exp2_test.cpp
    M libc/test/src/math/exp2f_test.cpp
    M libc/test/src/math/exp2m1f_test.cpp
    M libc/test/src/math/exp_test.cpp
    M libc/test/src/math/expf_test.cpp
    M libc/test/src/math/explogxf_test.cpp
    M libc/test/src/math/expm1_test.cpp
    M libc/test/src/math/expm1f_test.cpp
    M libc/test/src/math/log10_test.cpp
    M libc/test/src/math/log1p_test.cpp
    M libc/test/src/math/log1pf_test.cpp
    M libc/test/src/math/log2_test.cpp
    M libc/test/src/math/log2f_test.cpp
    M libc/test/src/math/log_test.cpp
    M libc/test/src/math/logf_test.cpp
    M libc/test/src/math/powf_test.cpp
    M libc/test/src/math/sin_test.cpp
    M libc/test/src/math/sincos_test.cpp
    M libc/test/src/math/sincosf_test.cpp
    M libc/test/src/math/sinf_test.cpp
    M libc/test/src/math/sinhf_test.cpp
    M libc/test/src/math/tan_test.cpp
    M libc/test/src/math/tanf_test.cpp
    M libc/test/src/math/tanhf_test.cpp

  Log Message:
  -----------
  [libc] Create a separate proxy header for math-function-macros.h  (#98430)

Fix #98393


  Commit: 2c435b80a1b85e00cedce13bad29d3c0a4a69189
      https://github.com/llvm/llvm-project/commit/2c435b80a1b85e00cedce13bad29d3c0a4a69189
  Author: Justin Bogner <mail at justinbogner.com>
  Date:   2024-07-27 (Sat, 27 Jul 2024)

  Changed paths:
    M llvm/include/llvm/Frontend/HLSL/HLSLResource.h
    M llvm/include/llvm/Support/DXILABI.h

  Log Message:
  -----------
  [DXIL] Remove extraneous include from DXILABI.h (#100620)

I'm not sure how an include of StringSwitch got here, but it isn't
needed.


  Commit: 3db5c1eeb08766cdd84a3186a1d2be6ab63b2883
      https://github.com/llvm/llvm-project/commit/3db5c1eeb08766cdd84a3186a1d2be6ab63b2883
  Author: Schrodinger ZHU Yifan <yifanzhu at rochester.edu>
  Date:   2024-07-27 (Sat, 27 Jul 2024)

  Changed paths:
    M libc/config/config.json
    M libc/config/linux/aarch64/entrypoints.txt
    M libc/config/linux/riscv/entrypoints.txt
    M libc/config/linux/x86_64/entrypoints.txt
    M libc/docs/configure.rst
    M libc/docs/dev/undefined_behavior.rst
    M libc/spec/posix.td
    M libc/src/__support/OSUtil/CMakeLists.txt
    M libc/src/__support/OSUtil/linux/CMakeLists.txt
    R libc/src/__support/OSUtil/linux/pid.cpp
    R libc/src/__support/OSUtil/pid.h
    M libc/src/__support/threads/CMakeLists.txt
    M libc/src/__support/threads/linux/CMakeLists.txt
    M libc/src/__support/threads/linux/rwlock.h
    M libc/src/__support/threads/linux/thread.cpp
    M libc/src/__support/threads/thread.h
    R libc/src/__support/threads/tid.h
    M libc/src/unistd/CMakeLists.txt
    M libc/src/unistd/getpid.h
    R libc/src/unistd/gettid.cpp
    R libc/src/unistd/gettid.h
    M libc/src/unistd/linux/CMakeLists.txt
    M libc/src/unistd/linux/fork.cpp
    M libc/src/unistd/linux/getpid.cpp
    M libc/startup/linux/CMakeLists.txt
    M libc/startup/linux/do_start.cpp
    M libc/test/integration/src/unistd/CMakeLists.txt
    M libc/test/integration/src/unistd/fork_test.cpp
    M libc/test/src/unistd/CMakeLists.txt
    R libc/test/src/unistd/gettid_test.cpp

  Log Message:
  -----------
  revert all tid changes (#100915)


  Commit: 4202634886b9b8f1ee74713a8ed8c86941891853
      https://github.com/llvm/llvm-project/commit/4202634886b9b8f1ee74713a8ed8c86941891853
  Author: Changpeng Fang <changpeng.fang at amd.com>
  Date:   2024-07-28 (Sun, 28 Jul 2024)

  Changed paths:
    M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-amdgcn.fcmp.constants.w32.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-and.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-copy.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-or.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-ptr-add.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-store-private.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-xor.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-brcond.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.ballot.i32.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.end.cf.i32.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.if.break.i32.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.wmma_32.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.wmma_64.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.wqm.demote.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/wmma-gfx12-w64-f16-f32-matrix-modifiers.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/wmma-gfx12-w64-imm.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/wmma-gfx12-w64-iu-modifiers.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/wmma-gfx12-w64-swmmac-index_key.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/wmma-gfx12-w64.ll

  Log Message:
  -----------
  [AMDGPU] Remove -wavefrontsizeX from GlobalISel tests (NFC) (#100812)

This is to make https://github.com/llvm/llvm-project/pull/100711
complete


  Commit: eee620b890ad7e2e139d44fee95bd5049fa48f5c
      https://github.com/llvm/llvm-project/commit/eee620b890ad7e2e139d44fee95bd5049fa48f5c
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-07-28 (Sun, 28 Jul 2024)

  Changed paths:
    M llvm/include/llvm/AsmParser/LLParser.h
    M llvm/lib/AsmParser/LLParser.cpp

  Log Message:
  -----------
  [LLParser] Use SmallVector instead of std::vector (#100916)

The use of SmallVector here saves 1.03% of heap allocations during the
compilation of X86ISelLowering.cpp.ll, a .ll version of
X86ISelLowering.cpp.  The 8 inline elements cover greater than 99% of
invocations encountered here.

While I am it, the patch changes the parameter type to ArrayRef to
allow callers to use any vector type.


  Commit: 25efb746d907ce0ffdd9195d191ff0f6944ea3ca
      https://github.com/llvm/llvm-project/commit/25efb746d907ce0ffdd9195d191ff0f6944ea3ca
  Author: NAKAMURA Takumi <geek4civic at gmail.com>
  Date:   2024-07-28 (Sun, 28 Jul 2024)

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

  Log Message:
  -----------
  [Bazel] Use PACKAGE_VERSION for version string.

This enables "-rc" suffix in release branches.


  Commit: 594d3593fec2ae15f6dd38c51fba8bb1f9828089
      https://github.com/llvm/llvm-project/commit/594d3593fec2ae15f6dd38c51fba8bb1f9828089
  Author: David Green <david.green at arm.com>
  Date:   2024-07-28 (Sun, 28 Jul 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/test/CodeGen/AArch64/fcvt_combine.ll
    M llvm/test/CodeGen/AArch64/fptosi-sat-vector.ll
    M llvm/test/CodeGen/AArch64/fptoui-sat-vector.ll

  Log Message:
  -----------
  [AArch64] Split v8f32 fptosi_sat into two v4f32.

If we produce illegal v8f32 types, the VectorLegalizer will unroll them,
scalarizing the operations. In this patch we pre-split them during custom
legalization to produce better results.


  Commit: 6907ab49399f131e04ea1816d155107e92d3b1aa
      https://github.com/llvm/llvm-project/commit/6907ab49399f131e04ea1816d155107e92d3b1aa
  Author: David Green <david.green at arm.com>
  Date:   2024-07-28 (Sun, 28 Jul 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
    M llvm/test/Analysis/CostModel/AArch64/fptoi_sat.ll
    M llvm/test/Transforms/AggressiveInstCombine/AArch64/fptosisat.ll

  Log Message:
  -----------
  [AArch64] Extend costs for fptoi.sat intrinsics.

Most of these bring the costs in line with the code generation. The f16 costs
without FullFP16 are usually converted to f32. Extended v2f32->v2f64 vectors
similarly use fcvtl + fcvt. As a backup we use the costs similar to the target
independent code, which should give a relatively high cost.


  Commit: 2711618214b22bbc170edd0672f0b5fc1cb8acf4
      https://github.com/llvm/llvm-project/commit/2711618214b22bbc170edd0672f0b5fc1cb8acf4
  Author: Mark de Wever <koraq at xs4all.nl>
  Date:   2024-07-28 (Sun, 28 Jul 2024)

  Changed paths:
    M libcxx/docs/Status/Cxx23Issues.csv
    M libcxx/include/__memory_resource/polymorphic_allocator.h
    A libcxx/test/std/utilities/utility/mem.res/mem.poly.allocator.class/mem.poly.allocator.class.general/equality.pass.cpp

  Log Message:
  -----------
  [libc++][memory_resource] Implements LWG3683. (#100775)

The polymorphic_allocator was added in C++17.
This issue was filed in 2022 so well after C++20. This issue adds an
operator==.

Starting with C++20 this adds a compiler generated operator!=. To have
the same behaviour in C++17 and C++20 (and later) a manual operator!= is
defined in C++17.

Implements
- LWG3683 operator== for polymorphic_allocator cannot deduce template
argument in common cases


  Commit: f7914aa2fd91a54f1314570442fc7730ee4b0457
      https://github.com/llvm/llvm-project/commit/f7914aa2fd91a54f1314570442fc7730ee4b0457
  Author: Dimitry Andric <dimitry at andric.com>
  Date:   2024-07-28 (Sun, 28 Jul 2024)

  Changed paths:
    R llvm/lib/Target/AArch64/peephole-sxtw.mir
    A llvm/test/CodeGen/AArch64/peephole-sxtw.mir

  Log Message:
  -----------
  [AArch64] Move peephole-sxtw.mir file to regression test directory (#100819)

In #96293 ("Remove superfluous sxtw in peephole opt") a file
`peephole-sxtw.mir` was added to `llvm/lib/Target/AArch64/`, but it
looks like this is a regression test file.

Move it to `llvm/test/CodeGen/AArch64/` which seems a more correct
location.


  Commit: 81595e9178eedc18dfcace9ac412f20697497f9f
      https://github.com/llvm/llvm-project/commit/81595e9178eedc18dfcace9ac412f20697497f9f
  Author: Pavel Samolysov <samolisov at gmail.com>
  Date:   2024-07-28 (Sun, 28 Jul 2024)

  Changed paths:
    A clang/test/AST/explicit-base-class-move-cntr.cpp

  Log Message:
  -----------
  [Clang][Sema] Add a test for move ctor calling for a base class. NFC (#97164)

When clang compiles the following expression:

```c++
  return A{B{"Move Ctor"}};
```
(where `B` is a base class for `A`), it adds a call to the move
constructor of `B`. When the code is changed to...

```c++
  return A{{"No Move Ctor"}};
```
... a move constructor is invoked neither for `A` nor for `B`.

The lit test demonstrates the difference in the generated AST.


  Commit: bb064535bd071c1bddaf55ff7fe283fc8d23c1fc
      https://github.com/llvm/llvm-project/commit/bb064535bd071c1bddaf55ff7fe283fc8d23c1fc
  Author: Younan Zhang <zyn7109 at gmail.com>
  Date:   2024-07-28 (Sun, 28 Jul 2024)

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

  Log Message:
  -----------
  [Clang][CTAD][NFC] Unify transformTemplateParameter() (#100865)

We ended up having two transformTemplateParameter() after CTAD for type
aliases was landed. This patch cleans them up and allows them to share
one implementation.

As a bonus, this also uses getDepthAndIndex() in preference to
getTemplateParameter{Depth,Index}().


  Commit: 77f89f1f541976b92b43a4b40bd54e889fc55f53
      https://github.com/llvm/llvm-project/commit/77f89f1f541976b92b43a4b40bd54e889fc55f53
  Author: Sergei Barannikov <barannikov88 at gmail.com>
  Date:   2024-07-28 (Sun, 28 Jul 2024)

  Changed paths:
    M llvm/lib/Target/Sparc/SparcISelLowering.cpp
    M llvm/test/CodeGen/SPARC/64cond.ll

  Log Message:
  -----------
  [Sparc] Remove custom lowering for SMULO / UMULO (#100858)

The underlying issue was fixed by 7c4fe0e9. The lowering is tested by
[us]mulo-128-legalisation-lowering.ll and there are no changes.


  Commit: 991192b211212aa366bf73b993ac444839c10bf5
      https://github.com/llvm/llvm-project/commit/991192b211212aa366bf73b993ac444839c10bf5
  Author: Sergei Barannikov <barannikov88 at gmail.com>
  Date:   2024-07-28 (Sun, 28 Jul 2024)

  Changed paths:
    M llvm/lib/Target/Sparc/SparcISelLowering.cpp
    M llvm/test/CodeGen/SPARC/2011-01-11-CC.ll
    M llvm/test/CodeGen/SPARC/fp128-split.ll
    M llvm/test/CodeGen/SPARC/smulo-128-legalisation-lowering.ll
    M llvm/test/CodeGen/SPARC/umulo-128-legalisation-lowering.ll

  Log Message:
  -----------
  [Sparc] Remove custom lowering for ADD[CE] / SUB[CE] (#100861)

The default lowering produces fewer instructions.


  Commit: c53843415ebba4d7c295bcd31bb325bfd08570a6
      https://github.com/llvm/llvm-project/commit/c53843415ebba4d7c295bcd31bb325bfd08570a6
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-28 (Sun, 28 Jul 2024)

  Changed paths:
    M llvm/include/llvm/ADT/StableHashing.h
    M llvm/lib/CodeGen/MachineStableHash.cpp

  Log Message:
  -----------
  [ADT,CodeGen] Remove stable_hash_combine_string

FNV, used by stable_hash_combine_string is extremely slow. For string
hashing with good avalanche effects, we prefer xxh3_64bits.

StableHashing.h might still be useful as it provides a stable
hash_combine while Hashing.h's might be non-deterministic (#96282).

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


  Commit: 30fa01141390a8d60ab661f763a22329337bd97d
      https://github.com/llvm/llvm-project/commit/30fa01141390a8d60ab661f763a22329337bd97d
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-28 (Sun, 28 Jul 2024)

  Changed paths:
    M lld/test/ELF/linkerscript/group.s

  Log Message:
  -----------
  [ELF,test] Improve --sysroot and GROUP tests

3i.t (INCLUDE "%t.dir/3a.t") describes a behavior difference from GNU
ld, which will be fixed by the next change.


  Commit: a7e8bddfc1ce3e9ef86f104a34f72ece72c23ba7
      https://github.com/llvm/llvm-project/commit/a7e8bddfc1ce3e9ef86f104a34f72ece72c23ba7
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-28 (Sun, 28 Jul 2024)

  Changed paths:
    M lld/ELF/ScriptLexer.cpp
    M lld/ELF/ScriptLexer.h
    M lld/ELF/ScriptParser.cpp
    M lld/test/ELF/linkerscript/group.s

  Log Message:
  -----------
  [ELF] Respect --sysroot for INCLUDE

If an included script is under the sysroot directory, when it opens an
absolute path file (`INPUT` or `GROUP`), add sysroot before the absolute
path. When the included script ends, the `isUnderSysroot` state is
restored.


  Commit: 44df89cc30fc462dcb821929c6d5459688ffe545
      https://github.com/llvm/llvm-project/commit/44df89cc30fc462dcb821929c6d5459688ffe545
  Author: Eric977 <53341107+Eric977 at users.noreply.github.com>
  Date:   2024-07-28 (Sun, 28 Jul 2024)

  Changed paths:
    M libc/config/linux/aarch64/entrypoints.txt
    M libc/config/linux/riscv/entrypoints.txt
    M libc/config/linux/x86_64/entrypoints.txt
    M libc/docs/dev/undefined_behavior.rst
    M libc/newhdrgen/yaml/pthread.yaml
    M libc/spec/posix.td
    M libc/src/pthread/CMakeLists.txt
    A libc/src/pthread/pthread_rwlock_clockrdlock.cpp
    A libc/src/pthread/pthread_rwlock_clockrdlock.h
    A libc/src/pthread/pthread_rwlock_clockwrlock.cpp
    A libc/src/pthread/pthread_rwlock_clockwrlock.h
    M libc/test/integration/src/pthread/CMakeLists.txt
    M libc/test/integration/src/pthread/pthread_rwlock_test.cpp

  Log Message:
  -----------
  [libc] add pthread_rwlock_clockrdlock and pthread_rwlock_clockwrlock … (#100543)


  Commit: ff7f97a8199e6e931f5ae2b1ec79e8a1eb9b05d6
      https://github.com/llvm/llvm-project/commit/ff7f97a8199e6e931f5ae2b1ec79e8a1eb9b05d6
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-28 (Sun, 28 Jul 2024)

  Changed paths:
    M lld/ELF/Driver.cpp
    M lld/ELF/ScriptParser.cpp
    M lld/ELF/ScriptParser.h
    M lld/test/ELF/defsym.s

  Log Message:
  -----------
  [ELF] --defsym: support quoted LHS

and move = splitting from Driver.cpp to ScriptParser.cpp.


  Commit: a17f8fe7d46e1708331df2dec733203de356b0cf
      https://github.com/llvm/llvm-project/commit/a17f8fe7d46e1708331df2dec733203de356b0cf
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-07-28 (Sun, 28 Jul 2024)

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

  Log Message:
  -----------
  [InstCombine] Use more inline elements in a SmallVector (#100942)

The 4 inline elements only cover 58% of cases encountered here during
the compilation of X86ISelLowering.cpp.ll, a .ll version of
X86ISelLowering.cpp.

The 8 inline elements cover 96% and save 0.27% of heap allocations.


  Commit: 41211919db5feb279d2954eb590a3cf2a1742152
      https://github.com/llvm/llvm-project/commit/41211919db5feb279d2954eb590a3cf2a1742152
  Author: Julius Alexandre <juliuswoosebert at gmail.com>
  Date:   2024-07-28 (Sun, 28 Jul 2024)

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

  Log Message:
  -----------
  [SandboxIR] Added isVolatile args to existing LoadInst::create function (#100850)

Added isVolatile args along with the tests.


  Commit: 0fb9f898e227925f43780bfe0e4887fba9fb1a15
      https://github.com/llvm/llvm-project/commit/0fb9f898e227925f43780bfe0e4887fba9fb1a15
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-07-28 (Sun, 28 Jul 2024)

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

  Log Message:
  -----------
  [InstCombine] Initialize a SmallVector with a range (NFC) (#100947)


  Commit: b7e4fba6e5dcae5ff51f8eced21470a1b3ccd895
      https://github.com/llvm/llvm-project/commit/b7e4fba6e5dcae5ff51f8eced21470a1b3ccd895
  Author: James Y Knight <jyknight at google.com>
  Date:   2024-07-28 (Sun, 28 Jul 2024)

  Changed paths:
    M llvm/lib/AsmParser/LLLexer.cpp
    M llvm/test/Bindings/llvm-c/echo.ll
    M llvm/test/Bitcode/compatibility.ll
    M llvm/test/CodeGen/X86/2007-05-15-maskmovq.ll
    M llvm/test/CodeGen/X86/2007-07-03-GR64ToVR64.ll
    M llvm/test/CodeGen/X86/2008-04-08-CoalescerCrash.ll
    M llvm/test/CodeGen/X86/2008-08-23-64Bit-maskmovq.ll
    M llvm/test/CodeGen/X86/2008-09-05-sinttofp-2xi32.ll
    M llvm/test/CodeGen/X86/2011-06-14-mmx-inlineasm.ll
    M llvm/test/CodeGen/X86/avx-vbroadcast.ll
    M llvm/test/CodeGen/X86/avx2-vbroadcast.ll
    M llvm/test/CodeGen/X86/bitcast-mmx.ll
    M llvm/test/CodeGen/X86/expand-vr64-gr64-copy.mir
    M llvm/test/CodeGen/X86/fast-isel-bc.ll
    M llvm/test/CodeGen/X86/fast-isel-nontemporal.ll
    M llvm/test/CodeGen/X86/mmx-arg-passing-x86-64.ll
    M llvm/test/CodeGen/X86/mmx-arg-passing.ll
    M llvm/test/CodeGen/X86/mmx-arith.ll
    M llvm/test/CodeGen/X86/mmx-bitcast-fold.ll
    M llvm/test/CodeGen/X86/mmx-bitcast.ll
    M llvm/test/CodeGen/X86/mmx-build-vector.ll
    M llvm/test/CodeGen/X86/mmx-coalescing.ll
    M llvm/test/CodeGen/X86/mmx-cvt.ll
    M llvm/test/CodeGen/X86/mmx-fold-load.ll
    M llvm/test/CodeGen/X86/mmx-fold-zero.ll
    M llvm/test/CodeGen/X86/mmx-intrinsics.ll
    M llvm/test/CodeGen/X86/mmx-only.ll
    M llvm/test/CodeGen/X86/mxcsr-reg-usage.ll
    M llvm/test/CodeGen/X86/nontemporal.ll
    M llvm/test/CodeGen/X86/pr13859.ll
    M llvm/test/CodeGen/X86/pr23246.ll
    M llvm/test/CodeGen/X86/pr29222.ll
    M llvm/test/CodeGen/X86/pr35982.ll
    M llvm/test/CodeGen/X86/select-mmx.ll
    M llvm/test/CodeGen/X86/stack-folding-mmx.ll
    M llvm/test/CodeGen/X86/vec_extract-mmx.ll
    M llvm/test/CodeGen/X86/vec_insert-5.ll
    M llvm/test/CodeGen/X86/vec_insert-7.ll
    M llvm/test/CodeGen/X86/vec_insert-mmx.ll
    M llvm/test/CodeGen/X86/vector-shuffle-mmx.ll
    M llvm/test/CodeGen/X86/x86-64-psub.ll
    M llvm/test/Instrumentation/MemorySanitizer/X86/mmx-intrinsics.ll
    M llvm/test/Instrumentation/MemorySanitizer/vector_arith.ll
    M llvm/test/Instrumentation/MemorySanitizer/vector_cvt.ll
    M llvm/test/Instrumentation/MemorySanitizer/vector_pack.ll
    M llvm/test/Instrumentation/MemorySanitizer/vector_shift.ll
    M llvm/test/MC/X86/x86-GCC-inline-asm-Y-constraints.ll
    R llvm/test/Transforms/GlobalOpt/x86_mmx_load.ll
    M llvm/test/Transforms/InstCombine/X86/x86-movmsk.ll
    M llvm/test/Transforms/InstCombine/cast.ll
    M llvm/test/Transforms/InstSimplify/ConstProp/gep-zeroinit-vector.ll
    M llvm/test/Transforms/SCCP/crash.ll
    M llvm/test/Transforms/SROA/pr57796.ll
    M llvm/test/Verifier/atomics.ll

  Log Message:
  -----------
  Cleanup x86_mmx after removing IR type  (#100646)

After #98505, the textual IR keyword `x86_mmx` was temporarily made to
parse as `<1 x i64>`, so as not to require a lot of test update noise.

This completes the removal of the type, by removing the`x86_mmx` keyword
from the IR parser, and making the (now no-op) test updates via `sed -i
's/\bx86_mmx\b/<1 x i64>/g' $(git grep -l x86_mmx llvm/test/)`.
Resulting bitcasts from <1 x i64> to itself were then manually deleted.

Changes to llvm/test/Bitcode/compatibility-$VERSION.ll were reverted, as
they're intended to be equivalent to the .bc file, if parsed by old
LLVM, so shouldn't be updated.

A few tests were removed, as they're no longer testing anything, in the
following files:
- llvm/test/Transforms/GlobalOpt/x86_mmx_load.ll
- llvm/test/Transforms/InstCombine/cast.ll
- llvm/test/Transforms/InstSimplify/ConstProp/gep-zeroinit-vector.ll

Works towards issue #98272.


  Commit: fd791f0fe562a41d8569fcb4d1e84b4c1e5719c7
      https://github.com/llvm/llvm-project/commit/fd791f0fe562a41d8569fcb4d1e84b4c1e5719c7
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-28 (Sun, 28 Jul 2024)

  Changed paths:
    M lld/ELF/Config.h
    M lld/ELF/Driver.cpp
    M lld/ELF/InputFiles.cpp
    M lld/ELF/InputFiles.h

  Log Message:
  -----------
  [ELF] Move TarWriter into Ctx. NFC

Similar to e980f16d52196fb2bc672ecb87e0f622253addec.


  Commit: ea7cc12f612ef5c5f70082ebfdee378d80ec44bd
      https://github.com/llvm/llvm-project/commit/ea7cc12f612ef5c5f70082ebfdee378d80ec44bd
  Author: David Green <david.green at arm.com>
  Date:   2024-07-28 (Sun, 28 Jul 2024)

  Changed paths:
    M llvm/lib/Target/ARM/ARMTargetTransformInfo.cpp

  Log Message:
  -----------
  [ARM] Add fallback fptoi_sat costs.

This makes sure that the custom operations get a fallback cost, even if they
are not perfect.


  Commit: 378fe2fc23fa56181577d411fe6d51fa531cd860
      https://github.com/llvm/llvm-project/commit/378fe2fc23fa56181577d411fe6d51fa531cd860
  Author: Farzon Lotfi <1802579+farzonl at users.noreply.github.com>
  Date:   2024-07-28 (Sun, 28 Jul 2024)

  Changed paths:
    M llvm/include/llvm/Analysis/VecFuncs.def
    M llvm/test/CodeGen/X86/fp-strict-libcalls-msvc32.ll
    M llvm/test/CodeGen/X86/vec-libcalls.ll
    M llvm/test/Transforms/LoopVectorize/X86/amdlibm-calls.ll
    M llvm/test/Transforms/LoopVectorize/X86/veclib-calls.ll

  Log Message:
  -----------
  [X86][LoopVectorize] Add support for arc and hyperbolic trig functions (#99383)

This change is part 2 x86 Loop Vectorization of :
https://github.com/llvm/llvm-project/pull/96222

It also has veclib call loop vectorization hence the test cases in
`llvm/test/Transforms/LoopVectorize/X86/veclib-calls.ll`

finally the last pr missed tests for
`llvm/test/CodeGen/X86/fp-strict-libcalls-msvc32.ll` and
`llvm/test/CodeGen/X86/vec-libcalls.ll` so added those aswell.

No evidence was found for arc and hyperbolic trig glibc vector math
functions

https://github.com/lattera/glibc/blob/master/sysdeps/x86/fpu/bits/math-vector.h
so no  new `_ZGVbN2v_*` and  `_ZGVdN4v_*` .
So no new tests in
`llvm/test/Transforms/LoopVectorize/X86/libm-vector-calls-VF2-VF8.ll`

Also no new svml and no new tests to:
`llvm/test/Transforms/LoopVectorize/X86/svml-calls.ll`
There was not enough evidence that there were svml arc and hyperbolic
trig vector implementations, Documentation was scarces so looked at test
cases in
[numpy](https://github.com/numpy/SVML/blob/32bf2a98420762a63ab418aaa0a7d6e17eb9627a/linux/avx512/svml_z0_acos_d_la.s#L8).
Someone with more experience with svml should investigate.

## Note 
amd libm doesn't have a vector hyperbolic sine api hence why youi might
notice there are no tests for `sinh`.

## History
This change is part of
https://github.com/llvm/llvm-project/issues/87367's investigation on
supporting IEEE math operations as intrinsics.
Which was discussed in this RFC:
https://discourse.llvm.org/t/rfc-all-the-math-intrinsics/78294

This change adds loop vectorization for `acos`, `asin`, `atan`, `cosh`,
`sinh`, and `tanh`.
resolves #70079
resolves #70080
resolves #70081
resolves #70083
resolves #70084
resolves #95966


  Commit: 62e9f40949ddc52e9660b25ab146bd5d9b39ad88
      https://github.com/llvm/llvm-project/commit/62e9f40949ddc52e9660b25ab146bd5d9b39ad88
  Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M llvm/include/llvm/IR/PatternMatch.h
    M llvm/lib/Analysis/InstructionSimplify.cpp
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/lib/Target/AMDGPU/AMDGPULowerKernelAttributes.cpp
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/lib/Transforms/AggressiveInstCombine/AggressiveInstCombine.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineAddSub.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
    M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
    M llvm/lib/Transforms/Scalar/DeadStoreElimination.cpp
    M llvm/lib/Transforms/Scalar/LoopBoundSplit.cpp
    M llvm/lib/Transforms/Vectorize/LoopIdiomVectorize.cpp
    M llvm/unittests/IR/PatternMatch.cpp

  Log Message:
  -----------
  [PatternMatch] Use `m_SpecificCmp` matchers. NFC. (#100878)

Compile-time improvement:
http://llvm-compile-time-tracker.com/compare.php?from=13996378d81c8fa9a364aeaafd7382abbc1db83a&to=861ffa4ec5f7bde5a194a7715593a1b5359eb581&stat=instructions:u
baseline: 803eaf29267c6aae9162d1a83a4a2ae508b440d3
```
Top 5 improvements:
  stockfish/movegen.ll 2541620819 2538599412 -0.12%
  minetest/profiler.cpp.ll 431724935 431246500 -0.11%
  abc/luckySwap.c.ll 581173720 580581935 -0.10%
  abc/kitTruth.c.ll 2521936288 2519445570 -0.10%
  abc/extraUtilTruth.c.ll 1216674614 1215495502 -0.10%
Top 5 regressions:
  openssl/libcrypto-shlib-sm4.ll 1155054721 1155943201 +0.08%
  openssl/libcrypto-lib-sm4.ll 1155054838 1155943063 +0.08%
  spike/vsm4r_vv.ll 1296430080 1297039258 +0.05%
  spike/vsm4r_vs.ll 1312496906 1313093460 +0.05%
  nuttx/lib_rand48.c.ll 126201233 126246692 +0.04%
Overall: -0.02112308%
```


  Commit: aef9a89c85db61783cd7484d8f114103e22f8953
      https://github.com/llvm/llvm-project/commit/aef9a89c85db61783cd7484d8f114103e22f8953
  Author: Schrodinger ZHU Yifan <yifanzhu at rochester.edu>
  Date:   2024-07-28 (Sun, 28 Jul 2024)

  Changed paths:
    M libc/src/compiler/generic/__stack_chk_fail.cpp

  Log Message:
  -----------
  [NFC] add newline after stack smashing message (#100958)

<img width="662" alt="smash newline"
src="https://github.com/user-attachments/assets/99625bcb-efd6-4733-aa01-2a2167ee686f">


  Commit: 279953f1da7d7d0e404638414deec5d1df291c7c
      https://github.com/llvm/llvm-project/commit/279953f1da7d7d0e404638414deec5d1df291c7c
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-07-28 (Sun, 28 Jul 2024)

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

  Log Message:
  -----------
  [RISCV] Simplify code in decomposeMulByConstant. NFC (#100946)

We already checked that the type is a scalar integer, so the constant
node should definitely be a ConstantSDNode. We can use cast instead of
dyn_cast.


  Commit: ad8cc88b1b84bd4d450824259eee5436e85309a9
      https://github.com/llvm/llvm-project/commit/ad8cc88b1b84bd4d450824259eee5436e85309a9
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-07-28 (Sun, 28 Jul 2024)

  Changed paths:
    M llvm/test/CodeGen/RISCV/rv64zba.ll

  Log Message:
  -----------
  [RISCV] Rename a few test cases for accuracy. NFC

The tests are for slliuw rather than slliw.


  Commit: 71d85ca2f9dba7f08a7a84c6cff5396ed594cb3c
      https://github.com/llvm/llvm-project/commit/71d85ca2f9dba7f08a7a84c6cff5396ed594cb3c
  Author: Brandon Wu <brandon.wu at sifive.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVFrameLowering.cpp
    M llvm/test/CodeGen/RISCV/rvv-cfi-info.ll

  Log Message:
  -----------
  [RISCV][CFI] Emit cfi_offset for every callee-saved vector registers (#100455)

The grouped vector register is modeled as a single register, e.g. V2M2,
which is actually V2 and V3. We need to decompose the grouped vector
register(if any) to individual vector register when emitting CFIs in
prologue.

Fixed https://github.com/llvm/llvm-project/issues/94500


  Commit: 43d0bb571b42609b454723fab7421d301d35e1b1
      https://github.com/llvm/llvm-project/commit/43d0bb571b42609b454723fab7421d301d35e1b1
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-07-28 (Sun, 28 Jul 2024)

  Changed paths:
    M llvm/test/CodeGen/RISCV/rv64zba.ll

  Log Message:
  -----------
  [RISCV] Add more srli+slli.uw tests cases for #100936. NFC


  Commit: 0953fb4c68380760562e61a5a09979359eb498c1
      https://github.com/llvm/llvm-project/commit/0953fb4c68380760562e61a5a09979359eb498c1
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-28 (Sun, 28 Jul 2024)

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

  Log Message:
  -----------
  [Driver] Ensure -W<warning> gets HelpHidden

Individual groups should not be displayed in --help. Fix two violations
and change the test to prevent regression.


  Commit: 8e2476e102e8ce3ae496b293bacccb248787404d
      https://github.com/llvm/llvm-project/commit/8e2476e102e8ce3ae496b293bacccb248787404d
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-28 (Sun, 28 Jul 2024)

  Changed paths:
    M lld/ELF/Config.h
    M lld/ELF/Driver.cpp
    M lld/ELF/Relocations.cpp
    M lld/ELF/Symbols.cpp
    M lld/ELF/Symbols.h
    M lld/ELF/SyntheticSections.cpp

  Log Message:
  -----------
  [ELF] Move SymbolAux into Ctx. NFC

The number of uses is modest.


  Commit: 5cddc314c8928ead12bb9c07cbefa45ee410de5c
      https://github.com/llvm/llvm-project/commit/5cddc314c8928ead12bb9c07cbefa45ee410de5c
  Author: Schrodinger ZHU Yifan <yifanzhu at rochester.edu>
  Date:   2024-07-28 (Sun, 28 Jul 2024)

  Changed paths:
    M libc/test/integration/src/pthread/pthread_rwlock_test.cpp

  Log Message:
  -----------
  [libc] fix rwlock test (#100962)

Previous commit uses wrong clock id and forget to release an additional
rdlock. cc @Eric977
Sorry for missing this in my initial review.

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

Notice that the timestamp is created via
```c++
  LIBC_NAMESPACE::clock_gettime(CLOCK_REALTIME, &ts);
  ts.tv_nsec += 50'000;
  if (ts.tv_nsec >= 1'000'000'000) {
    ts.tv_nsec -= 1'000'000'000;
    ts.tv_sec += 1;
  }
```


  Commit: dfdef2cbf738dd1cae99fb521d49086fcbbaf19a
      https://github.com/llvm/llvm-project/commit/dfdef2cbf738dd1cae99fb521d49086fcbbaf19a
  Author: lntue <35648136+lntue at users.noreply.github.com>
  Date:   2024-07-28 (Sun, 28 Jul 2024)

  Changed paths:
    M libc/fuzzing/math/RemQuoDiff.h
    M libc/fuzzing/stdlib/strtofloat_fuzz.cpp
    M libc/test/src/math/cbrt_test.cpp
    M libc/test/utils/FPUtil/x86_long_double_test.cpp

  Log Message:
  -----------
  [libc] Fix the remaining isnan and isinf in tests. (#100969)

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


  Commit: 34d48279b8161d2510fff9e94e10c9508d5249f8
      https://github.com/llvm/llvm-project/commit/34d48279b8161d2510fff9e94e10c9508d5249f8
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-07-28 (Sun, 28 Jul 2024)

  Changed paths:
    M llvm/lib/CodeGen/LiveDebugValues/InstrRefBasedImpl.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
    M llvm/lib/ExecutionEngine/MCJIT/MCJIT.cpp
    M llvm/lib/IR/BasicBlock.cpp
    M llvm/lib/Target/PowerPC/PPCGenScalarMASSEntries.cpp
    M llvm/lib/Transforms/Scalar/DFAJumpThreading.cpp
    M llvm/lib/Transforms/Utils/ValueMapper.cpp

  Log Message:
  -----------
  [llvm] Initialize SmallVector with ranges (NFC) (#100948)


  Commit: de5aa8d0060cbe286c9cbae90ca8f197b92a3956
      https://github.com/llvm/llvm-project/commit/de5aa8d0060cbe286c9cbae90ca8f197b92a3956
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-28 (Sun, 28 Jul 2024)

  Changed paths:
    M llvm/include/llvm/MC/MCFragment.h
    M llvm/lib/MC/MCAssembler.cpp
    M llvm/lib/MC/MCFragment.cpp
    M llvm/lib/Target/X86/MCTargetDesc/X86AsmBackend.cpp

  Log Message:
  -----------
  [MC] Remove unused MCCompactEncodedInstFragment

This has been used after #94950.


  Commit: 034d01422b5fd8f502ccb45ce95da108415a39a6
      https://github.com/llvm/llvm-project/commit/034d01422b5fd8f502ccb45ce95da108415a39a6
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-28 (Sun, 28 Jul 2024)

  Changed paths:
    M llvm/include/llvm/MC/MCFragment.h

  Log Message:
  -----------
  [MC] Remove MCEncodedFragmentWithContents

MCEncodedFragmentWithFixups can derive from MCEncodedFragment directly.
Follow-up to de5aa8d0060cbe286c9cbae90ca8f197b92a3956.


  Commit: 73c72f2c6505d5bc8b47bb0420f6cba5b24270fe
      https://github.com/llvm/llvm-project/commit/73c72f2c6505d5bc8b47bb0420f6cba5b24270fe
  Author: Arseniy Zaostrovnykh <necto.ne at gmail.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M clang/lib/Analysis/LiveVariables.cpp
    M clang/test/Analysis/live-stmts.cpp
    A clang/test/Analysis/short-circuiting-eval.cpp

  Log Message:
  -----------
  [analyzer] Keep alive short-circuiting condition subexpressions in a conditional (#100745)

Fix the false negative caused by state merging in the evaluation of a
short-circuiting expression inside the condition of a ternary operator.
The fixed symptom is that CSA always evaluates `(x || x) ? n : m` to
`m`.

This change forces the analyzer to consider all logical expressions
prone to short-circuiting alive until the entire conditional expression
is evaluated. Here is why.

By default, LiveVariables analysis marks only direct subexpressions as
live relative to any expression. So for `a ? b : c` it will consider
`a`, `b`, and `c` alive when evaluating the ternary operator expression.

To explore both possibilities opened by a ternary operator, it is
important to keep something different about the exploded nodes created
after the evaluation of its branches. These two nodes come to the same
location, so they must have different states. Otherwise, they will be
considered identical and can engender only one outcome.
`ExprEngine::visitGuardedExpr` chooses the first predecessor exploded
node to carry the value of the conditional expression. It works well in
the case of a simple condition, because when `a ? b : c` is evaluated,
`a` is kept alive, so the two branches differ in the value of `a`.

However, before this patch is applied, this strategy breaks for `(x ||
x) ? n : m`. `x` is not a direct child of the ternary expression. Due to
short-circuiting, once `x` is assumed to be `true`, evaluation jumps
directly to `n` and then to the result of the entire ternary expression.
Given that the result of the entire condition `(x || x)` is not
constructed, and `x` is not kept alive, the difference between the path
coming through `n` and through `m` disappears. As a result, exploded
nodes coming from the "true expression" and the "false expression"
engender identical successors and merge the execution paths.


  Commit: 33a50e0eaa80cf3db1b944762db9a37a06f3ac32
      https://github.com/llvm/llvm-project/commit/33a50e0eaa80cf3db1b944762db9a37a06f3ac32
  Author: Rainer Orth <ro at gcc.gnu.org>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M compiler-rt/CMakeLists.txt

  Log Message:
  -----------
  [compiler-rt][test] Disable lld tests on SPARC (#100533)

As detailed in Issue #100320, a considerable number of tests that
explicitly use `-fuse-ld=lld` `FAIL` on Linux/sparc64 due to several
`lld` limitations (no 32-bit SPARC support, lack of support for various
relocations, ...).

To reduce the noise, this patch disables `COMPILER_RT_HAS_LLD` on SPARC
wholesale.

Tested on `sparc64-unknown-linux-gnu`.


  Commit: 5d2c324fea2d7cf86ec50e4bb6b680acf89b2ed5
      https://github.com/llvm/llvm-project/commit/5d2c324fea2d7cf86ec50e4bb6b680acf89b2ed5
  Author: Haojian Wu <hokein.wu at gmail.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

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

  Log Message:
  -----------
  Remove a leftover debug-only statement in CheckExprLifetime.cpp


  Commit: f6d1d6fe7b7f04db7f0a445c8bc3e63fcdcd8e0a
      https://github.com/llvm/llvm-project/commit/f6d1d6fe7b7f04db7f0a445c8bc3e63fcdcd8e0a
  Author: Manish Kausik H <46352931+Nirhar at users.noreply.github.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
    M llvm/test/CodeGen/X86/unaligned_extract_from_vector_through_stack.ll

  Log Message:
  -----------
  [SelectionDAG] Use unaligned store to legalize `EXTRACT_VECTOR_ELT` type when Stack is non-realignable (#98176)

This patch ports the commit a6614ec5b7c1dbfc4b847884c5de780cf75e8e9c to
SelectionDAG TypeLegalization.

Fixes #98044

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


  Commit: 2db0c00e6092947fa07cc587c4a7537213bbc093
      https://github.com/llvm/llvm-project/commit/2db0c00e6092947fa07cc587c4a7537213bbc093
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M clang/lib/CodeGen/CGDebugInfo.cpp
    A clang/test/CodeGenCXX/debug-info-explicit-this.cpp

  Log Message:
  -----------
  [clang][CGDebugInfo] Don't generate an implicit 'this' parameter if one was specified explicitly (#100767)

Currently we would unconditionally add an implicit `this` parameter when
creating an instance method type. However, when we have an explicit
'this', we shouldn't generate one. This patch only passes a valid
`ThisPtr` type to `getOrCreateInstanceMethodType` if one wasn't
explicitly specified. There's no way to get a pointer to a member
function with an explicit `this` parameter (those are treated as regular
function pointers instead). So there's no need to account for that case
in `CGDebugInfo::CreateType`.

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


  Commit: 31769e4d0892312948812fbc2d0a56249ea72492
      https://github.com/llvm/llvm-project/commit/31769e4d0892312948812fbc2d0a56249ea72492
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M clang/include/clang/AST/ASTImporter.h
    M clang/include/clang/AST/DeclCXX.h
    M clang/lib/AST/ASTImporter.cpp
    M clang/unittests/AST/ASTImporterTest.cpp

  Log Message:
  -----------
  Revert "Reland [clang][ASTImport] Add support for import of empty records" (#100903)

This reverts commit 88e5206f2c96a34e23a4d63f0a38afb2db044f0a. The
original change went in a while ago (last year) in
https://reviews.llvm.org/D145057. The specific reason I'm proposing a
revert is that this is now causing exactly the issue that @balazske
predicted in https://reviews.llvm.org/D145057#4164717:
> Problematic case is if the attribute has pointer to a Decl or Type
that is imported here in a state when the field is already created but
not initialized. Another problem is that attributes are added a second
time in Import(Decl *)

This now came up in the testing of LLDB support for
https://github.com/llvm/llvm-project/issues/93069. There,
`__compressed_pair`s are now replaced with fields that have an
`alignof(...)` and `[[no_unique_address]]` attribute. In the specific
failing case, we're importing following `std::list` method:
```
size_type& __sz() _NOEXCEPT { return __size_; }
```
During this process, we create a new `__size_` `FieldDecl` (but don't
initialize it yet). Then we go down the `ImportAttrs` codepath added in
D145057. This imports the `alignof` expression which then references the
uninitialized `__size_` and we trigger an assertion.

Important to note, this codepath was added specifically to support
`[[no_unique_address]]` in LLDB, and was supposed to land with
https://reviews.llvm.org/D143347. But the LLDB side of that never
landed, and the way we plan to support `[[no_unique_address]]` doesn't
require things like the `markEmpty` method added here. So really, this
is a dead codepath, which as pointed out in the original review isn't
fully sound.


  Commit: 3a2ef3a6348786b139b66c17febc87925da5d506
      https://github.com/llvm/llvm-project/commit/3a2ef3a6348786b139b66c17febc87925da5d506
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    R llvm/test/Analysis/CostModel/AMDGPU/arith-fp.ll
    A llvm/test/Analysis/CostModel/AMDGPU/arithmetic_fence.ll
    A llvm/test/Analysis/CostModel/AMDGPU/canonicalize.ll
    A llvm/test/Analysis/CostModel/AMDGPU/copysign.ll
    A llvm/test/Analysis/CostModel/AMDGPU/exp.ll
    A llvm/test/Analysis/CostModel/AMDGPU/exp10.ll
    A llvm/test/Analysis/CostModel/AMDGPU/exp2.ll
    M llvm/test/Analysis/CostModel/AMDGPU/fabs.ll
    M llvm/test/Analysis/CostModel/AMDGPU/fma.ll
    M llvm/test/Analysis/CostModel/AMDGPU/fmul.ll
    A llvm/test/Analysis/CostModel/AMDGPU/fmuladd.ll
    M llvm/test/Analysis/CostModel/AMDGPU/fneg.ll
    A llvm/test/Analysis/CostModel/AMDGPU/frexp.ll
    A llvm/test/Analysis/CostModel/AMDGPU/is_fpclass.ll
    A llvm/test/Analysis/CostModel/AMDGPU/ldexp.ll
    A llvm/test/Analysis/CostModel/AMDGPU/log.ll
    A llvm/test/Analysis/CostModel/AMDGPU/log10.ll
    A llvm/test/Analysis/CostModel/AMDGPU/log2.ll
    A llvm/test/Analysis/CostModel/AMDGPU/maximum.ll
    A llvm/test/Analysis/CostModel/AMDGPU/maxnum.ll
    A llvm/test/Analysis/CostModel/AMDGPU/minimum.ll
    A llvm/test/Analysis/CostModel/AMDGPU/minnum.ll
    A llvm/test/Analysis/CostModel/AMDGPU/ptrmask.ll
    A llvm/test/Analysis/CostModel/AMDGPU/sqrt.ll
    A llvm/test/Transforms/SLPVectorizer/AMDGPU/slp-v2f16.ll

  Log Message:
  -----------
  AMDGPU: Add some baseline cost model tests (#100797)


  Commit: 5430f73b501f9fc0a38c3768592f5f31bcbdf2f0
      https://github.com/llvm/llvm-project/commit/5430f73b501f9fc0a38c3768592f5f31bcbdf2f0
  Author: Sander de Smalen <sander.desmalen at arm.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M clang/include/clang/Basic/DiagnosticFrontendKinds.td
    M clang/lib/CodeGen/Targets/AArch64.cpp
    M clang/test/CodeGen/aarch64-sme-inline-streaming-attrs.c

  Log Message:
  -----------
  [Clang] Demote always_inline error to warning for mismatching SME attrs (#100740)

PR #77936 introduced a diagnostic to avoid calls being inlined into
functions with a different streaming mode, because inlining those
functions may result in different runtime behaviour. This was necessary
because LLVM doesn't check whether inlining is possible and thus blindly
inlines the function without checking feasibility.

In practice however, this introduces an artificial restriction that the
user may not be able to work around. Calling an `always_inline` function
from some header file that is out of the control of the user would
result in an error that the user cannot remedy.

Therefore, this patch demotes the error into a warning (for calls from
streaming[-compatible] -> non-streaming), but the proper fix would be to
fix the AlwaysInliner in LLVM to avoid inlining when it has analyzed the
callee and has determined that inlining is not possible.

Calling an always_inline function for calls from non-streaming ->
streaming will remain an error, because there is little pre-existing
code for SME, so it is expected that the header file can be modified by
the user (e.g. by using `__arm_streaming_compatible` if the code is
claimed to be compatible).


  Commit: d72c8b02802c87386f5db3c7de6c79e921618fa3
      https://github.com/llvm/llvm-project/commit/d72c8b02802c87386f5db3c7de6c79e921618fa3
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M lldb/include/lldb/Symbol/SymbolFile.h
    M lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParser.cpp
    M lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp
    M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp
    M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.h
    M lldb/test/API/lang/c/struct_types/main.c
    A lldb/test/Shell/SymbolFile/DWARF/vla.cpp

  Log Message:
  -----------
  [lldb][TypeSystemClang] Create VLAs of explicitly 0-size as ConstantArrayType (#100710)

Depends on https://github.com/llvm/llvm-project/pull/100674

Currently, we treat VLAs declared as `int[]` and `int[0]` identically.
I.e., we create them as `IncompleteArrayType`s. However, the
`DW_AT_count` for `int[0]` *does* exist, and is retrievable without an
execution context. This patch decouples the notion of "has 0 elements"
from "has no known `DW_AT_count`".

This aligns with how Clang represents `int[0]` in the AST (it treats it
as a `ConstantArrayType` of 0 size).

This issue was surfaced when adapting LLDB to
https://github.com/llvm/llvm-project/issues/93069. There, the
`__compressed_pair_padding` type has a `char[0]` member. If we
previously got the `__compressed_pair_padding` out of a module (where
clang represents `char[0]` as a `ConstantArrayType`), and try to merge
the AST with one we got from DWARF (where LLDB used to represent
`char[0]` as an `IncompleteArrayType`), the AST structural equivalence
check fails, resulting in silent ASTImporter failures. This manifested
in a failure in `TestNonModuleTypeSeparation.py`.

**Implementation**
1. Adjust `ParseChildArrayInfo` to store the element counts of each VLA
dimension as an `optional<uint64_t>`, instead of a regular `uint64_t`.
So when we pass this down to `CreateArrayType`, we have a better
heuristic for what is an `IncompleteArrayType`.
2. In `TypeSystemClang::GetBitSize`, if we encounter a
`ConstantArrayType` simply return the size that it was created with. If
we couldn't determine the authoritative bound from DWARF during parsing,
we would've created an `IncompleteArrayType`. This ensures that
`GetBitSize` on arrays with `DW_AT_count 0x0` returns `0` (whereas
previously it would've returned a `std::nullopt`, causing that
`FieldDecl` to just get dropped during printing)


  Commit: 5bd3aef5e285cce793e3fc6b21299ac9d650a947
      https://github.com/llvm/llvm-project/commit/5bd3aef5e285cce793e3fc6b21299ac9d650a947
  Author: Ivan Kosarev <ivan.kosarev at amd.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUInstPrinter.cpp
    M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUInstPrinter.h
    M llvm/lib/Target/AMDGPU/SIInstrInfo.td
    M llvm/lib/Target/AMDGPU/SMInstructions.td

  Log Message:
  -----------
  [AMDGPU] Use a generic printer for NamedIntOperands. (#100399)

This includes simplifying printing dmask modifiers where we don't need
to mask the value to print.

Part of <https://github.com/llvm/llvm-project/issues/62629>.


  Commit: e3a3397209fe05ec65d74e9096347fc7a76e919e
      https://github.com/llvm/llvm-project/commit/e3a3397209fe05ec65d74e9096347fc7a76e919e
  Author: Sander de Smalen <sander.desmalen at arm.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M clang/include/clang/Basic/DiagnosticFrontendKinds.td
    M clang/lib/CodeGen/Targets/AArch64.cpp
    M clang/test/CodeGen/aarch64-sme-inline-streaming-attrs.c

  Log Message:
  -----------
  Revert "[Clang] Demote always_inline error to warning for mismatching SME attrs" (#100991)

Reverts llvm/llvm-project#100740


  Commit: d86311f293ebc3867733d4453e0d6c929e620d8b
      https://github.com/llvm/llvm-project/commit/d86311f293ebc3867733d4453e0d6c929e620d8b
  Author: Dominik Adamski <dominik.adamski at amd.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M clang/lib/Driver/ToolChains/Flang.cpp
    M flang/test/Driver/omp-driver-offload.f90
    M flang/test/Driver/target-cpu-features.f90
    M flang/test/Driver/target-gpu-features.f90

  Log Message:
  -----------
  [Flang-new][OpenMP] Add bitcode files for AMD GPU OpenMP (#96742)

Flang-new needs to add `mlink-builtin-bitcode` objects to properly
support offload code generation for AMD GPUs (for example, math
functions).

Both Flang-new and Clang rely on `mlink-builtin-bitcode` flags. These
flags are added by the `AMDGPUOpenMPToolchain::addClangTargetOptions`
function. Now, both compilers reuse the same function.

Flang-new tests for AMDGPU were updated by adding the `-nogpulib` flag.
This flag allows running AMDGPU tests on machines without the ROCm stack.


  Commit: 0362a29905ab8d68a8eb48741840a514b66552f8
      https://github.com/llvm/llvm-project/commit/0362a29905ab8d68a8eb48741840a514b66552f8
  Author: martinboehme <mboehme at google.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M clang/include/clang/Analysis/FlowSensitive/AdornedCFG.h
    M clang/lib/Analysis/FlowSensitive/AdornedCFG.cpp
    M clang/lib/Analysis/FlowSensitive/Transfer.cpp
    M clang/lib/Analysis/FlowSensitive/TypeErasedDataflowAnalysis.cpp
    M clang/unittests/Analysis/FlowSensitive/TypeErasedDataflowAnalysisTest.cpp

  Log Message:
  -----------
  [clang][dataflow] Fix bug in `buildContainsExprConsumedInDifferentBlock()`. (#100874)

This was missing a call to `ignoreCFGOmittedNodes()`. As a result, the
function
would erroneously conclude that a block did not contain an expression
consumed
in a different block if the expression in question was surrounded by a
`ParenExpr` in the consuming block. The patch adds a test that triggers
this
scenario (and fails without the fix).

To prevent this kind of bug in the future, the patch also adds a new
method
`blockForStmt()` to `AdornedCFG` that calls `ignoreCFGOmittedNodes()`
and is
preferred over accessing `getStmtToBlock()` directly.


  Commit: 03e17da510963ce6b7a1d0ab4d67f753a6cc7495
      https://github.com/llvm/llvm-project/commit/03e17da510963ce6b7a1d0ab4d67f753a6cc7495
  Author: Nabeel Omer <nabeel.omer at sony.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/DebugHandlerBase.h
    M llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
    M llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
    M llvm/lib/CodeGen/AsmPrinter/DwarfDebug.h
    M llvm/test/CodeGen/X86/fsafdo_test1.ll
    M llvm/test/CodeGen/X86/fsafdo_test4.ll
    A llvm/test/DebugInfo/X86/loop-align-debug.ll

  Log Message:
  -----------
  [DWARF] Emit line 0 source locations for BB padding nops (#99496)

This patch makes LLVM emit line 0 source locations for nops emitted as
basic block padding.

---------

Co-authored-by: Orlando Cazalet-Hyams <orlando.hyams at sony.com>


  Commit: a347bdb2b828272359e49a8ce9de9d6412950838
      https://github.com/llvm/llvm-project/commit/a347bdb2b828272359e49a8ce9de9d6412950838
  Author: Jan Patrick Lehr <JanPatrick.Lehr at amd.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
    R llvm/test/Transforms/SimplifyCFG/AMDGPU/skip-threading.ll
    M llvm/test/Transforms/SimplifyCFG/convergent.ll

  Log Message:
  -----------
  Revert "[SimplifyCFG] Skip threading if the target may have divergent branches" (#100994)

Reverts llvm/llvm-project#100185

See comments on PR (PR not accepted, outstanding review comments, breaks HIP-clang buildbot)


  Commit: fdfeea5bd6763277b5078e33e17e1bfc521a6cba
      https://github.com/llvm/llvm-project/commit/fdfeea5bd6763277b5078e33e17e1bfc521a6cba
  Author: Sergio Afonso <safonsof at amd.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M flang/lib/Lower/OpenMP/ClauseProcessor.cpp
    M flang/lib/Lower/OpenMP/DataSharingProcessor.cpp
    M flang/lib/Lower/OpenMP/OpenMP.cpp
    M flang/lib/Optimizer/Transforms/OMPMapInfoFinalization.cpp
    M mlir/include/mlir/Dialect/OpenMP/OpenMPClauseOperands.h
    M mlir/include/mlir/Dialect/OpenMP/OpenMPClauses.td
    M mlir/include/mlir/Dialect/OpenMP/OpenMPOps.td
    M mlir/include/mlir/Dialect/OpenMP/OpenMPOpsInterfaces.td
    M mlir/lib/Conversion/SCFToOpenMP/SCFToOpenMP.cpp
    M mlir/lib/Dialect/OpenMP/IR/OpenMPDialect.cpp
    M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
    M mlir/test/Dialect/OpenMP/invalid.mlir
    M mlir/test/Dialect/OpenMP/ops.mlir
    M mlir/test/Target/LLVMIR/openmp-llvm.mlir

  Log Message:
  -----------
  [MLIR][OpenMP][Flang] Normalize clause arguments names (#99505)

Currently, there are some inconsistencies to how clause arguments are
named in the OpenMP dialect. Additionally, the clause operand structures
associated to them also diverge in certain cases. The purpose of this
patch is to normalize argument names across all `OpenMP_Clause` tablegen
definitions and clause operand structures.

This has the benefit of providing more consistent representations for
clauses in the dialect, but the main short-term advantage is that it
enables the development of an OpenMP-specific tablegen backend to
automatically generate the clause operand structures without breaking
dependent code.

The main re-naming decisions made in this patch are the following:
- Variadic arguments (i.e. multiple values) have the "_vars" suffix.
This and other similar suffixes are removed from array attribute
arguments.
- Individual required or optional value arguments do not have any suffix
added to them (e.g. "val", "var", "expr", ...), except for `if` which
would otherwise result in an invalid C++ variable name.
- The associated clause's name is prepended to argument names that don't
already contain it as part of its name. This avoids future collisions
between arguments named the same way on different clauses and adding
both clauses to the same operation.
- Privatization and reduction related arguments that contain lists of
symbols pointing to privatizer/reducer operations use the "_syms"
suffix. This removes the inconsistencies between the names for
"copyprivate_funcs", "[in]reductions", "privatizers", etc.
- General improvements to names, replacement of camel case for snake
case everywhere, etc.
- Renaming of operation-associated operand structures to use the
"Operands" suffix in place of "ClauseOps", to better differentiate
between clause operand structures and operation operand structures.
- Fields on clause operand structures are sorted according to the
tablegen definition of the same clause.

The assembly format for a few arguments is updated to better reflect the
clause they are associated with:
  - `chunk_size` -> `dist_schedule_chunk_size`
  - `grain_size` -> `grainsize`
  - `simd` -> `par_level_simd`


  Commit: 389679d5f9055bffe8bbd25ae41f084a8d08e0f8
      https://github.com/llvm/llvm-project/commit/389679d5f9055bffe8bbd25ae41f084a8d08e0f8
  Author: Sander de Smalen <sander.desmalen at arm.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M clang/include/clang/Basic/DiagnosticFrontendKinds.td
    M clang/lib/CodeGen/Targets/AArch64.cpp
    M clang/test/CodeGen/aarch64-sme-inline-streaming-attrs.c

  Log Message:
  -----------
  Reland: "[Clang] Demote always_inline error to warning for mismatching SME attrs" (#100991) (#100996)

Test `aarch64-sme-inline-streaming-attrs.c` caused some buildbot
failures, because the test was missing a `REQUIRES: aarch64-registered
target`. This was because we've demoted the error to a warning, which
then resulted in a different error message, because Clang can't actually
CodeGen the IR.


  Commit: 46ecd7bbe895c12f77feea7353da43c32d1a8a41
      https://github.com/llvm/llvm-project/commit/46ecd7bbe895c12f77feea7353da43c32d1a8a41
  Author: Sergio Afonso <safonsof at amd.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M flang/lib/Lower/OpenMP/ClauseProcessor.cpp
    M flang/lib/Lower/OpenMP/ClauseProcessor.h
    M flang/lib/Lower/OpenMP/DataSharingProcessor.cpp
    M mlir/include/mlir/Dialect/OpenMP/OpenMPClauseOperands.h
    M mlir/include/mlir/Dialect/OpenMP/OpenMPClauses.td
    M mlir/include/mlir/Dialect/OpenMP/OpenMPOps.td
    M mlir/lib/Dialect/OpenMP/IR/OpenMPDialect.cpp
    M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
    M mlir/test/Dialect/OpenMP/ops.mlir

  Log Message:
  -----------
  [MLIR][OpenMP] Create `LoopRelatedClause` (#99506)

This patch introduces a new OpenMP clause definition not defined by the spec.

Its main purpose is to define the `loop_inclusive` (previously "inclusive",
renamed according to the parent of this PR in the stack) argument of
`omp.loop_nest` in such a way that a followup implementation of a tablegen
backend to automatically generate clause and operation operand structures
directly from `OpenMP_Op` and `OpenMP_Clause` definitions can properly generate
the `LoopNestOperands` structure.

`collapse` clause arguments are also moved into this new definition, as they
represent information on the loop nests being collapsed rather than the
`collapse` clause itself.


  Commit: 0a94511aec7a41194c0e61d88801312542ff70ce
      https://github.com/llvm/llvm-project/commit/0a94511aec7a41194c0e61d88801312542ff70ce
  Author: Mitch Phillips <31459023+hctim at users.noreply.github.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M compiler-rt/lib/gwp_asan/definitions.h
    M compiler-rt/lib/gwp_asan/platform_specific/guarded_pool_allocator_fuchsia.cpp
    M compiler-rt/lib/gwp_asan/platform_specific/guarded_pool_allocator_posix.cpp
    M compiler-rt/lib/gwp_asan/platform_specific/utilities_fuchsia.cpp
    M compiler-rt/lib/gwp_asan/platform_specific/utilities_posix.cpp
    M compiler-rt/lib/gwp_asan/tests/CMakeLists.txt
    A compiler-rt/lib/gwp_asan/tests/utilities.cpp
    M compiler-rt/lib/gwp_asan/utilities.h

  Log Message:
  -----------
  Log errno (or fuchsia equivalent) on map failures (#95391)

A feature requested by Android, we should log errno (or the
corresponding fuchsia error status) as part of the message when
mmap/mprotect/etc. fails.


  Commit: 102f322557b0969ea5b85448df1b03508554218c
      https://github.com/llvm/llvm-project/commit/102f322557b0969ea5b85448df1b03508554218c
  Author: Sergio Afonso <safonsof at amd.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/OpenMP/OpenMPClauseOperands.h
    M mlir/include/mlir/Dialect/OpenMP/OpenMPOps.td
    M mlir/lib/Dialect/OpenMP/IR/OpenMPDialect.cpp
    M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
    M mlir/test/Dialect/OpenMP/invalid.mlir
    M mlir/test/Dialect/OpenMP/ops.mlir

  Log Message:
  -----------
  [MLIR][OpenMP] Add missing clauses to OpenMP op definitions (#99507)

This patch adds the missing `OpenMP_Clause` definitions to all existing
`OpenMP_Op`s and updates their operand structure based builders to
initialize the new arguments.

The result of this change is that operation operand structures are now
based in the same list of clauses as their tablegen counterparts. This
means that all of the information needed is now in place to
automatically generate OpenMP operand structures from tablegen
defitions.

Since this change doesn't involve the introduction of actual support for
these clauses, new arguments are not initialized from values stored in
the corresponding operand structure fields but rather set to empty or
null. Those should be updated when support for these clauses on the
corresponding operation is added.


  Commit: 19b785b7334d01354e8430634bab3c3341c671ca
      https://github.com/llvm/llvm-project/commit/19b785b7334d01354e8430634bab3c3341c671ca
  Author: David Spickett <david.spickett at linaro.org>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
    M llvm/test/Analysis/CostModel/AArch64/shuffle-other.ll
    M llvm/test/Transforms/VectorCombine/AArch64/select-shuffle.ll

  Log Message:
  -----------
  Revert "[AArch64] Remove special-case inserted shuffle cost."

This reverts commit f67fa3be4db68afc08c7f3d9523f1533fa5687b7.

Caused test suite failures on AArch64:
https://lab.llvm.org/buildbot/#/builders/17/builds/1349


  Commit: d1f3a92ea9c491855b3186e84115fefe7c4185ee
      https://github.com/llvm/llvm-project/commit/d1f3a92ea9c491855b3186e84115fefe7c4185ee
  Author: David Spickett <david.spickett at linaro.org>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
    M llvm/test/Analysis/CostModel/AArch64/shuffle-other.ll
    M llvm/test/Transforms/VectorCombine/AArch64/select-shuffle.ll

  Log Message:
  -----------
  Revert "[AArch64] Remove special-case inserted shuffle cost."

This reverts commit 19b785b7334d01354e8430634bab3c3341c671ca.

My bisect must have been wrong because they're still failing,
and there are follow ups to this that would need unpicking anyway.


  Commit: 9e462b7ea23ea864b1f3f3b72d25cfbed95149d5
      https://github.com/llvm/llvm-project/commit/9e462b7ea23ea864b1f3f3b72d25cfbed95149d5
  Author: Fabian Ritter <fabian.ritter at amd.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M llvm/include/llvm/Analysis/TargetTransformInfo.h
    M llvm/include/llvm/Analysis/TargetTransformInfoImpl.h
    M llvm/lib/Analysis/TargetTransformInfo.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.h
    M llvm/lib/Transforms/Utils/LowerMemIntrinsics.cpp

  Log Message:
  -----------
  [LowerMemIntrinsics][NFC] Use Align in TTI::getMemcpyLoopLoweringType (#100984)

...and also in TTI::getMemcpyLoopResidualLoweringType.


  Commit: 1f38301957c1f41722e219ede5d56d67c000213e
      https://github.com/llvm/llvm-project/commit/1f38301957c1f41722e219ede5d56d67c000213e
  Author: Julien Schueller <schueller at phimeca.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M mlir/lib/Dialect/Affine/Analysis/CMakeLists.txt

  Log Message:
  -----------
  [mlir] Fix missing FuncOps.h.inc (#97885)

Closes #84568

Similar to #71691 (reproduce with make -j1)


  Commit: f7491f53cbef28ecea764a6a47ae69338fb7afbe
      https://github.com/llvm/llvm-project/commit/f7491f53cbef28ecea764a6a47ae69338fb7afbe
  Author: Andreas Jonson <andjo403 at hotmail.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
    M llvm/test/Transforms/InstCombine/ctpop-pow2.ll
    M llvm/test/Transforms/InstCombine/ctpop.ll
    M llvm/test/Transforms/InstCombine/icmp-ne-pow2.ll
    M llvm/test/Transforms/InstCombine/ispow2.ll

  Log Message:
  -----------
  [InstCombine] Reduce range of ctpop for non zero argument (#100899)


  Commit: 13d39cb6f7b20e596b66f59ebf4dba766451398b
      https://github.com/llvm/llvm-project/commit/13d39cb6f7b20e596b66f59ebf4dba766451398b
  Author: Balazs Benics <benicsbalazs at gmail.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M clang/docs/analyzer/checkers.rst
    M clang/lib/StaticAnalyzer/Checkers/StreamChecker.cpp
    M clang/test/Analysis/stream.c

  Log Message:
  -----------
  [analyzer] Fix crash of StreamChecker when eval calling 'fopen' (#100990)

Actually, on the failure branch of `fopen`, the resulting pointer could
alias with `stdout` iff `stdout` is already known to be null.
We crashed in this case as the implementation assumed that the
state-split for creating the success and failure branches both should be
viable; thus dereferenced both of those states - leading to the crash.

To fix this, let's just only add this no-alias property for the success
path, and that's it :)

Fixes #100901


  Commit: 77655f42d58e85875c4b4e28a73208b64a653c2a
      https://github.com/llvm/llvm-project/commit/77655f42d58e85875c4b4e28a73208b64a653c2a
  Author: Ingo Müller <ingomueller at google.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M mlir/lib/Dialect/Arith/IR/ArithOps.cpp

  Log Message:
  -----------
  [mlir][arith] Assert preconditions in `BitcastOp::fold`. (#100743)

This PR adds an assertion to `BitcastOp::fold` that fails if that
function is called on invalid IR. That can happen when patterns, passes,
etc. create (invalid) IR using builders and folding is triggered on that
IR before verification, for example, through `OpBuilder::createOrFold`.
The new assert triggers earlier than previously in order to help getting
to the root cause faster.

Signed-off-by: Ingo Müller <ingomueller at google.com>


  Commit: e6fa09f445f172bfd0c011adc6bf36e38816b781
      https://github.com/llvm/llvm-project/commit/e6fa09f445f172bfd0c011adc6bf36e38816b781
  Author: Thomas Hashem <35398565+hashemthomas1 at users.noreply.github.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M llvm/lib/Transforms/Utils/SCCPSolver.cpp
    A llvm/test/Transforms/SCCP/float-denormal-simplification.ll

  Log Message:
  -----------
  [SCCP] Add context to SimplifyQuery (#100831)


  Commit: 4cdc19b84cf48189e40915178d60991f6fc469b2
      https://github.com/llvm/llvm-project/commit/4cdc19b84cf48189e40915178d60991f6fc469b2
  Author: vdonaldson <37090318+vdonaldson at users.noreply.github.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M flang/include/flang/Optimizer/Builder/IntrinsicCall.h
    M flang/include/flang/Optimizer/Builder/Runtime/Exceptions.h
    M flang/include/flang/Runtime/exceptions.h
    M flang/include/flang/Runtime/magic-numbers.h
    M flang/lib/Evaluate/real.cpp
    M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
    M flang/lib/Optimizer/Builder/Runtime/Exceptions.cpp
    M flang/lib/Optimizer/Builder/Runtime/Numeric.cpp
    M flang/runtime/exceptions.cpp
    M flang/test/Evaluate/fold-nearest.f90
    A flang/test/Lower/Intrinsics/ieee_next.f90
    M flang/test/Lower/Intrinsics/nearest.f90
    M flang/unittests/Optimizer/Builder/Runtime/NumericTest.cpp

  Log Message:
  -----------
  [flang] IEEE_NEXT_AFTER, IEEE_NEXT_DOWN, IEEE_NEXT_UP, NEAREST (#100782)

IEEE_ARITHMETIC intrinsic module procedures IEEE_NEXT_AFTER,
IEEE_NEXT_DOWN, and IEEE_NEXT_UP, and intrinsic NEAREST return larger or
smaller values adjacent to their primary REAL argument. The four
procedures vary in how the direction is chosen, in how special cases are
treated, and in what exceptions are generated. Implement the three
IEEE_ARITHMETIC procedures. Update the NEAREST implementation to support
all six REAL kinds 2,3,4,8,10,16, and fix several bugs.

IEEE_NEXT_AFTER(X,Y) returns a NaN when Y is a NaN as that seems to be
the universal choice of other compilers.

Change the front end compile time implementation of these procedures to
return normal (HUGE) values for infinities when applicable, rather than
always returning the input infinity.


  Commit: f7e9d48a73dd68c8b652692d8a9e559a6ceb722e
      https://github.com/llvm/llvm-project/commit/f7e9d48a73dd68c8b652692d8a9e559a6ceb722e
  Author: Braden Helmer <bradenhelmeraus at gmail.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Sema/SemaOverload.cpp
    M clang/test/SemaCXX/cxx2b-deducing-this.cpp

  Log Message:
  -----------
  [Clang] Fix confusing diagnositcs related to explicit this parameters (#100351)

Fixes #97878.

This PR improves diagnostics related to explicit 'this' parameters.
Previously, the 'this' parameter would be incorrectly underlined when
diagnosing a bad conversion.


  Commit: ad778889cf5ce74be3193fae1d3b2bce34a56863
      https://github.com/llvm/llvm-project/commit/ad778889cf5ce74be3193fae1d3b2bce34a56863
  Author: Michael Maitland <michaeltmaitland at gmail.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/SDPatternMatch.h
    M llvm/unittests/CodeGen/SelectionDAGPatternMatchTest.cpp

  Log Message:
  -----------
  [DAG] Add SDPatternMatch for VScale nodes


  Commit: d2304427cb0270259bc083a3db27413823f56e59
      https://github.com/llvm/llvm-project/commit/d2304427cb0270259bc083a3db27413823f56e59
  Author: Michael Maitland <michaeltmaitland at gmail.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

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

  Log Message:
  -----------
  [DAG][NFC] Use SDPatternMatch for VScale in some instances


  Commit: e1065370aaacb1b1cb48e77d37d376bf024f4a39
      https://github.com/llvm/llvm-project/commit/e1065370aaacb1b1cb48e77d37d376bf024f4a39
  Author: Luke Lau <luke at igalia.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVInsertVSETVLI.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfoVPseudos.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoVSDPatterns.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoVVLPatterns.td
    M llvm/test/CodeGen/RISCV/rvv/extractelt-fp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-bitcast.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fp-bitcast.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-llrint.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-lrint.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-reduction-fp-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vfptoi-constrained-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/fpclamptosat_vec.ll
    M llvm/test/CodeGen/RISCV/rvv/insertelt-fp.ll
    M llvm/test/CodeGen/RISCV/rvv/unmasked-ta.ll
    M llvm/test/CodeGen/RISCV/rvv/vfmv.f.s.ll
    M llvm/test/CodeGen/RISCV/rvv/vfmv.s.f.ll
    M llvm/test/CodeGen/RISCV/rvv/vreductions-fp-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vreductions-fp-vp.ll

  Log Message:
  -----------
  [RISCV] Remove vfmv.s.f and vfmv.f.s lmul pseudo variants (#100970)

In #71501 we removed the LMUL variants for vmv.s.x and vmv.x.s because
they ignore register groups, so this patch does the same for their
floating point equivalents.

We don't need to add any extra patterns for extractelt in
RISCVInstrInfoVSDPatterns.td because in lowerEXTRACT_VECTOR_ELT we make
sure that the node is narrowed down to LMUL 1.


  Commit: 97c62b8f7501d1c6c2f507b075fbe45a31d2b9dc
      https://github.com/llvm/llvm-project/commit/97c62b8f7501d1c6c2f507b075fbe45a31d2b9dc
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

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

  Log Message:
  -----------
  [LinkerWrapper] Forward `-mllvm` and `--offload-opt` arguments to device (#100424)

Summary:
Previously we could parse these internally as they would be used by the
embedded LTO job. Now, this LTO is passed to the linker utilities which
means these need to be forwarded. So this can now either be done with
`--offload-opt` which works in the clang job, or with `-Xoffload-linker`
manually.

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


  Commit: 77ff969e5d6a561606ea87fbae101195417d4d73
      https://github.com/llvm/llvm-project/commit/77ff969e5d6a561606ea87fbae101195417d4d73
  Author: Jonathan Peyton <jonathan.l.peyton at intel.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

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

  Log Message:
  -----------
  [OpenMP] Add topology and affinity changes for Meteor Lake (#91012)

These are Intel-specific changes for the CPUID leaf 31 method for
detecting machine topology.

* Cleanup known levels usage in x2apicid topology algorithm
Change to be a constant mask of all Intel topology type values.

* Take unknown ids into account when sorting them
If a hardware id is unknown, then put further down the hardware thread
list so it will take last priority when assigning to threads.

* Have sub ids printed out for hardware thread dump

* Add caches to topology 
New` kmp_cache_ids_t` class helps create cache ids which are then put
into the topology table after regular topology type ids have been put
in.

* Allow empty masks in place list creation
Have enumeration information and place list generation take into account
that certain hardware threads may be lacking certain layers

* Allow different procs to have different number of topology levels
Accommodates possible situation where CPUID.1F has different depth for
different hardware threads. Each hardware thread has a topology
description which is just a small set of its topology levels. These
descriptions are tracked to see if the topology is uniform or not.

* Change regular ids with logical ids
Instead of keeping the original sub ids that the x2apicid topology
detection algorithm gives, change each id to its logical id which is a
number: [0, num_items - 1]. This makes inserting new layers into the
topology significantly simpler.

* Insert caches into topology
This change takes into account that most topologies are uniform and
therefore can use the quicker method of inserting caches as equivalent
layers into the topology.


  Commit: 916a91578f7b367c106859a0b46d8ce573bce36a
      https://github.com/llvm/llvm-project/commit/916a91578f7b367c106859a0b46d8ce573bce36a
  Author: Jonathan Peyton <jonathan.l.peyton at intel.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

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

  Log Message:
  -----------
  [OpenMP] Assign thread ids in the cpuinfo topology method (#91013)

On non-hyperthreaded machines, the thread id is not always explicit in
the /proc/cpuinfo file. This patch adds a check to ensure the thread ids
are put in.


  Commit: 3ef922081193ae1c46683f3ca282e700efc9005e
      https://github.com/llvm/llvm-project/commit/3ef922081193ae1c46683f3ca282e700efc9005e
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M llvm/lib/Target/X86/X86TargetTransformInfo.cpp
    M llvm/test/Analysis/CostModel/X86/arith-overflow.ll

  Log Message:
  -----------
  [CostModel][X86] Add missing AVX512 vector mul overflow intrinsic costs

Fix regressions in #100519


  Commit: 1b4be6a474b3747765a218201bd637f899fd9b66
      https://github.com/llvm/llvm-project/commit/1b4be6a474b3747765a218201bd637f899fd9b66
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M llvm/test/CodeGen/ARM/vselect_imax.ll

  Log Message:
  -----------
  [ARM] Regenerate vselect_imax.ll


  Commit: 363c1e6e517281ad387fd91787545d632e7c48b6
      https://github.com/llvm/llvm-project/commit/363c1e6e517281ad387fd91787545d632e7c48b6
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M offload/test/offloading/bug51781.c

  Log Message:
  -----------
  [OpenMP] Re-enable test after correctly forwarding `mllvm`


  Commit: 53c37f300dd1b450671f2aee4cc649c380adb5ad
      https://github.com/llvm/llvm-project/commit/53c37f300dd1b450671f2aee4cc649c380adb5ad
  Author: Stefan Pintilie <stefanp at ca.ibm.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M llvm/lib/Target/PowerPC/PPCRegisterInfo.td
    M llvm/test/CodeGen/PowerPC/aix-vec_insert_elt.ll
    M llvm/test/CodeGen/PowerPC/aix32-p8-scalar_vector_conversions.ll
    M llvm/test/CodeGen/PowerPC/build-vector-tests.ll
    M llvm/test/CodeGen/PowerPC/builtins-ppc-xlcompat-pwr9-64bit.ll
    M llvm/test/CodeGen/PowerPC/canonical-merge-shuffles.ll
    M llvm/test/CodeGen/PowerPC/combine-fneg.ll
    M llvm/test/CodeGen/PowerPC/constant-pool.ll
    M llvm/test/CodeGen/PowerPC/elf64-byval-cc.ll
    M llvm/test/CodeGen/PowerPC/fma-combine.ll
    M llvm/test/CodeGen/PowerPC/fp-strict-round.ll
    M llvm/test/CodeGen/PowerPC/frem.ll
    M llvm/test/CodeGen/PowerPC/handle-f16-storage-type.ll
    M llvm/test/CodeGen/PowerPC/ldexp.ll
    M llvm/test/CodeGen/PowerPC/p10-splatImm-CPload-pcrel.ll
    M llvm/test/CodeGen/PowerPC/p8-scalar_vector_conversions.ll
    M llvm/test/CodeGen/PowerPC/pcrel-call-linkage-leaf.ll
    M llvm/test/CodeGen/PowerPC/save-reg-params.ll
    M llvm/test/CodeGen/PowerPC/select_const.ll
    M llvm/test/CodeGen/PowerPC/subreg-coalescer.mir
    M llvm/test/CodeGen/PowerPC/subreg-lanemasks.mir
    M llvm/test/CodeGen/PowerPC/toc-float.ll
    M llvm/test/CodeGen/PowerPC/variable_elem_vec_extracts.ll
    M llvm/test/CodeGen/PowerPC/vec_insert_elt.ll
    M llvm/test/CodeGen/PowerPC/vector-constrained-fp-intrinsics.ll
    M llvm/test/CodeGen/PowerPC/vector-llrint.ll
    M llvm/test/CodeGen/PowerPC/vector-lrint.ll
    M llvm/test/CodeGen/PowerPC/vector-reduce-fadd.ll
    M llvm/test/CodeGen/PowerPC/vector-reduce-fmax.ll
    M llvm/test/CodeGen/PowerPC/vector-reduce-fmin.ll
    M llvm/test/CodeGen/PowerPC/vector-reduce-fmul.ll
    M llvm/test/CodeGen/PowerPC/vsx.ll

  Log Message:
  -----------
  [PowerPC] Add phony subregisters to cover the high half of the VSX registers. (#94628)

On PowerPC there are 128 bit VSX registers. These registers are half
overlapped with 64 bit floating point registers (FPR). The 64 bit half
of the VXS register that does not overlap with the FPR does not overlap
with any other register class. The FPR are the only subregisters of the
VSX registers but they do not fully cover the 128 bit super register.
This leads to incorrect lane masks being created.

This patch adds phony registers for the other half of the VSX registers
in order to fully cover them and to make sure that the lane masks are
not the same for the VSX and the floating point register.


  Commit: 64199bf332567aeeff02841022d967325b318075
      https://github.com/llvm/llvm-project/commit/64199bf332567aeeff02841022d967325b318075
  Author: Schrodinger ZHU Yifan <yifanzhu at rochester.edu>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M libc/config/linux/aarch64/entrypoints.txt

  Log Message:
  -----------
  [libc] make aarch64 libm entrypoints consistent w/ x86-64 (#100963)

Test passes locally.


  Commit: 0a1ce1ae62f58eacf98b89487065fedccbc7cd68
      https://github.com/llvm/llvm-project/commit/0a1ce1ae62f58eacf98b89487065fedccbc7cd68
  Author: Kohei Yamaguchi <fix7211 at gmail.com>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/Ptr/IR/CMakeLists.txt

  Log Message:
  -----------
  [mlir][doc] Fix docs for `PtrDialect` using the `-gen-dialect-doc`(NFC) (#101013)


  Commit: 7647f88234cadf0aed019abb1fc723c6708b871c
      https://github.com/llvm/llvm-project/commit/7647f88234cadf0aed019abb1fc723c6708b871c
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

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

  Log Message:
  -----------
  [RISCV] Add isel special case for (and (srl X, c2), c1) -> (slli_uw (srli x, c2+c3), c3). (#100966)

Where c1 is a shifted mask with 32 set bits and c3 trailing zeros.

Fixes #100936.


  Commit: 922558f47446fc732aa474f7bffc3190b4ffab43
      https://github.com/llvm/llvm-project/commit/922558f47446fc732aa474f7bffc3190b4ffab43
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

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

  Log Message:
  -----------
  [RISCV] Remove registers from ins of Priv instructions. (#100857)

The rd and rs1 encoding are already forced to 0s. We don't need
registers too.


  Commit: 2c37334d8dce7ef7d3ecc8c80522fe73010b12cc
      https://github.com/llvm/llvm-project/commit/2c37334d8dce7ef7d3ecc8c80522fe73010b12cc
  Author: William Junda Huang <williamjhuang at google.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M llvm/include/llvm/Transforms/Utils/SSAUpdaterImpl.h

  Log Message:
  -----------
  [Transforms] Speed up SSAUpdater::FindExistingPHI (#100281)

In SSAUpdater::FindExistingPHI, the cleanup function is inefficient for
large function with many blocks because it clears the Phi value
reference for every block if not matched for every phi value, even if
most blocks are not modified by CheckIfPHIMatches. This behavior is
particularly slow for large functions because the complexity is Θ(# PHI
* # BBs).


Updated the behavior to only clear modified blocks, which in practice
has a much less complexity because of early exit on PHI mismatch.


  Commit: 7a2a36f952e5f1c0184e5de0bb8a32b5d2382427
      https://github.com/llvm/llvm-project/commit/7a2a36f952e5f1c0184e5de0bb8a32b5d2382427
  Author: Sergei Barannikov <barannikov88 at gmail.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64AsmPrinter.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.h
    M llvm/lib/Target/AMDGPU/AMDGPUMCInstLower.cpp
    M llvm/lib/Target/ARM/ARMAsmPrinter.cpp
    M llvm/lib/Target/ARM/ARMAsmPrinter.h
    M llvm/lib/Target/ARM/ARMMCInstLower.cpp
    M llvm/lib/Target/CSKY/CSKYAsmPrinter.cpp
    M llvm/lib/Target/CSKY/CSKYAsmPrinter.h
    M llvm/lib/Target/LoongArch/LoongArchAsmPrinter.cpp
    M llvm/lib/Target/LoongArch/LoongArchAsmPrinter.h
    M llvm/lib/Target/Mips/MipsAsmPrinter.cpp
    M llvm/lib/Target/Mips/MipsAsmPrinter.h
    M llvm/lib/Target/RISCV/RISCVAsmPrinter.cpp
    M llvm/utils/TableGen/PseudoLoweringEmitter.cpp

  Log Message:
  -----------
  [AsmPrinter] Don't EmitToStreamer instructions lowered by tblgenned code (#100803)

This allows lowering individual instructions in a bundle before a single
call to EmitToStreamer for VLIW targets.


  Commit: 7b3db551e499a7ecef6a29c0ffbc923c45277332
      https://github.com/llvm/llvm-project/commit/7b3db551e499a7ecef6a29c0ffbc923c45277332
  Author: Jannick Kremer <51118500+DeinAlptraum at users.noreply.github.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M clang/bindings/python/clang/cindex.py

  Log Message:
  -----------
  [libclang/python] Export all enums (#100941)

This resolves #48212 and also adds the remaining unexposed Enums


  Commit: b66310f938f36557f44042e300e5894e39297b2b
      https://github.com/llvm/llvm-project/commit/b66310f938f36557f44042e300e5894e39297b2b
  Author: Philip Reames <preames at rivosinc.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

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

  Log Message:
  -----------
  [RISCV][TTI] Split costing of [u/s]int_to_fp from fp_to_[u/s]int [nfc] (#101029)

The amount of code sharing between them is fairly small, and the split
version is much easier to read.


  Commit: ee57ce57d8094026e2795182758bc57027a72293
      https://github.com/llvm/llvm-project/commit/ee57ce57d8094026e2795182758bc57027a72293
  Author: Oleksandr T. <oleksandr.tarasiuk at outlook.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Sema/SemaInit.cpp
    M clang/test/SemaCXX/destructor.cpp

  Log Message:
  -----------
  [Clang] prevent checking destructor reference with an invalid initializer (#97860)

Fixes #97230


  Commit: 150bf637baad2ba4df6369600b65d897ed9b31a7
      https://github.com/llvm/llvm-project/commit/150bf637baad2ba4df6369600b65d897ed9b31a7
  Author: Pavel Skripkin <paskripkin at gmail.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/lib/Sema/SemaDeclAttr.cpp
    M clang/test/AST/attr-print-emit.cpp
    M clang/test/Sema/attr-ownership.c
    M clang/test/Sema/attr-ownership.cpp

  Log Message:
  -----------
  [Clang][Sema] Disallow applying `onwership_returns` to functions that return non-pointers (#99564)

`onwership_returns` works only with pointers, since it models
user-defined memory allocation functions. Make semantics more clear and
report an error if attribute is attached to wrong function.

Closes #99501


  Commit: e65882fec9689b2232575530bab0776d7c303dae
      https://github.com/llvm/llvm-project/commit/e65882fec9689b2232575530bab0776d7c303dae
  Author: Noah Goldstein <goldstein.w.n at gmail.com>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

  Changed paths:
    M llvm/test/Transforms/InferFunctionAttrs/annotate.ll
    A llvm/test/Transforms/InstCombine/lib-call-exit.ll

  Log Message:
  -----------
  [InstCombine][InferFunctionAttrs] Add tests for inferring `cold` on exit/abort; NFC


  Commit: 67fb7c34f11df03ac359571dd4d503a36e06275e
      https://github.com/llvm/llvm-project/commit/67fb7c34f11df03ac359571dd4d503a36e06275e
  Author: Noah Goldstein <goldstein.w.n at gmail.com>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

  Changed paths:
    M llvm/include/llvm/Analysis/TargetLibraryInfo.def
    M llvm/include/llvm/Transforms/Utils/SimplifyLibCalls.h
    M llvm/lib/Transforms/Utils/BuildLibCalls.cpp
    M llvm/lib/Transforms/Utils/SimplifyLibCalls.cpp
    M llvm/test/Transforms/InferFunctionAttrs/annotate.ll
    M llvm/test/Transforms/InstCombine/lib-call-exit.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` on `exit`/`abort`

`abort` can be assumed always cold and assume non-zero `exit` status
as a `cold` path as well.

Closes #101003


  Commit: 135a1e90a3066f61ca741e9ebebfec79c9595ea5
      https://github.com/llvm/llvm-project/commit/135a1e90a3066f61ca741e9ebebfec79c9595ea5
  Author: Justin Bogner <mail at justinbogner.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M llvm/docs/DirectX/DXILResources.rst

  Log Message:
  -----------
  [DirectX] Update "dx.TypedBuffer" docs to include a "signed" bit (#100695)

To lower these types to dxil we need to know whether ints are signed or
not, but the LLVM type loses that. Add a bit to indicate it's so.


  Commit: 0d9b4394081df959b3752283ed9ca303759dda61
      https://github.com/llvm/llvm-project/commit/0d9b4394081df959b3752283ed9ca303759dda61
  Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
  Date:   2024-07-29 (Mon, 29 Jul 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/LowerVectorMask.cpp
    M mlir/lib/Dialect/Vector/Transforms/VectorDropLeadUnitDim.cpp
    M mlir/lib/Dialect/Vector/Transforms/VectorEmulateNarrowType.cpp

  Log Message:
  -----------
  [mlir][vector] Use `DenseI64ArrayAttr` for constant_mask dim sizes (#100997)

This prevents a bunch of boilerplate conversions to/from IntegerAttrs
and int64_ts. Other than that this is a NFC.


  Commit: 2c0ec01b516deba8922c1aae59b1907de6443587
      https://github.com/llvm/llvm-project/commit/2c0ec01b516deba8922c1aae59b1907de6443587
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M clang/lib/Driver/ToolChains/AMDGPU.cpp
    M clang/test/Driver/amdgpu-toolchain.c

  Log Message:
  -----------
  [AMDGPU] Correctly pass the target-id to `ld.lld` (#101037)

Summary:
The `ld.lld` linker handles LTO, but it does not understand the
target-id syntax some AMDGPU targets use. This patch parses the
target-id and passes the processor name in `-mcpu` and features in
`-mattr`.


  Commit: 0dd1128d6341283d60150d294a9c4db1ba38f8b2
      https://github.com/llvm/llvm-project/commit/0dd1128d6341283d60150d294a9c4db1ba38f8b2
  Author: Michael Maitland <michaeltmaitland at gmail.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/SDPatternMatch.h
    M llvm/unittests/CodeGen/SelectionDAGPatternMatchTest.cpp

  Log Message:
  -----------
  [DAG] Add SDPatternMatch::m_VSelect (#100758)

As per the comment in
https://github.com/llvm/llvm-project/pull/100686#pullrequestreview-2201991135


  Commit: 197f4a90519df308d9bfddcc931f7683a5ae9cb9
      https://github.com/llvm/llvm-project/commit/197f4a90519df308d9bfddcc931f7683a5ae9cb9
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/test/Transforms/SLPVectorizer/X86/external-used-across-reductions.ll
    M llvm/test/Transforms/SLPVectorizer/X86/gather-extractelements-different-bbs.ll
    M llvm/test/Transforms/SLPVectorizer/X86/horizontal-minmax.ll
    M llvm/test/Transforms/SLPVectorizer/X86/reduction-gather-non-scheduled-extracts.ll
    M llvm/test/Transforms/SLPVectorizer/X86/reduction-logical.ll

  Log Message:
  -----------
  [SLP]Remove ExtraArgs from reductions.

No need to handle extra arguments during the reductions anymore, the
compiler now can handle all reduced values and reduction operands
correctly, even if they are from different basic blocks.

Simplifies analysis, reduces compiler size, improves overall
vectorization.

Metric: size..text
test-suite :: SingleSource/Benchmarks/Misc-C++/stepanov_container.test    16668.00    17148.00  2.9%
test-suite :: External/SPEC/CINT2006/483.xalancbmk/483.xalancbmk.test  2389675.00  2418683.00  1.2%
test-suite :: MultiSource/Benchmarks/ASCI_Purple/SMG2000/smg2000.test   253517.00   253645.00  0.1%
test-suite :: MultiSource/Benchmarks/Bullet/bullet.test   309678.00   309806.00  0.0%
test-suite :: MultiSource/Applications/JM/ldecod/ldecod.test   389203.00   389363.00  0.0%
test-suite :: MultiSource/Benchmarks/MiBench/consumer-jpeg/consumer-jpeg.test   111120.00   111152.00  0.0%
test-suite :: MultiSource/Benchmarks/tramp3d-v4/tramp3d-v4.test  1039103.00  1039215.00  0.0%
test-suite :: External/SPEC/CFP2017rate/511.povray_r/511.povray_r.test  1155883.00  1155963.00  0.0%
test-suite :: MicroBenchmarks/LoopVectorization/LoopInterleavingBenchmarks.test   276646.00   276662.00  0.0%
test-suite :: MultiSource/Applications/JM/lencod/lencod.test   848691.00   848739.00  0.0%
test-suite :: External/SPEC/CFP2006/453.povray/453.povray.test  1138604.00  1138636.00  0.0%
test-suite :: External/SPEC/CINT2006/445.gobmk/445.gobmk.test   910201.00   910217.00  0.0%
test-suite :: External/SPEC/CFP2017rate/526.blender_r/526.blender_r.test 12385484.00 12385628.00  0.0%
test-suite :: External/SPEC/CINT2017speed/602.gcc_s/602.gcc_s.test  9667580.00  9667676.00  0.0%
test-suite :: External/SPEC/CINT2017rate/502.gcc_r/502.gcc_r.test  9667580.00  9667676.00  0.0%
test-suite :: External/SPEC/CINT2017rate/523.xalancbmk_r/523.xalancbmk_r.test  2856182.00  2856198.00  0.0%
test-suite :: External/SPEC/CINT2017speed/623.xalancbmk_s/623.xalancbmk_s.test  2856182.00  2856198.00  0.0%
test-suite :: External/SPEC/CINT2006/464.h264ref/464.h264ref.test   773224.00   773192.00 -0.0%
test-suite :: MultiSource/Benchmarks/7zip/7zip-benchmark.test  1035148.00  1035084.00 -0.0%
test-suite :: External/SPEC/CINT2017speed/631.deepsjeng_s/631.deepsjeng_s.test    98126.00    98094.00 -0.0%
test-suite :: External/SPEC/CINT2017rate/531.deepsjeng_r/531.deepsjeng_r.test    97966.00    97934.00 -0.0%
test-suite :: MultiSource/Benchmarks/MallocBench/gs/gs.test   167391.00   167215.00 -0.1%
test-suite :: MultiSource/Applications/ALAC/encode/alacconvert-encode.test    56685.00    56605.00 -0.1%
test-suite :: MultiSource/Applications/ALAC/decode/alacconvert-decode.test    56685.00    56605.00 -0.1%
test-suite :: SingleSource/Regression/C/gcc-c-torture/execute/GCC-C-execute-20050826-2.test     1302.00     1294.00 -0.6%

Misc-C++/stepanov_container - better code due to cost fixes.
483.xalancbmk - better code due to cost fixes.
ASCI_Purple/SMG2000 - better code due to cost fixes.
Benchmarks/Bullet - better vector code because of the cost.
JM/ldecod - extra code remain scalar, extra reduction vectorized
consumer-jpeg - extra code remain scalar because of the cost.
tramp3d-v4 - better vectorization because of cost fixes.
511.povray_r - better vectorization because of cost fixes.
LoopInterleavingBenchmarks - extra reductions are vectorized
JM/lencod - small changes in vector code because of extract cost fixes.
453.povray - small changes in vector code because of extract cost fixes.
445.gobmk - extra small reduction vectorized
526.blender_r - extra reduced scalars, better small reduction, small
changes in the vetorization because of the fixes for extracts cost
602.gcc_s
502.gcc_r - small changes in reductions vectorization because of the
fixes in the extract cost.
631.deepsjeng_s
623.xalancbmk_s - small changes in reductions vectorization because of
the fixes in the extract cost.
MallocBench/gs - extra code remain scalar because of extracts cost
alacconvert-encode - extra code remain scalar because of extracts cost
alacconvert-decode - extra code remain scalar because of extracts cost
GCC-C-execute-20050826-2 - extra reduction gets vectorized

Reviewers: RKSimon

Reviewed By: RKSimon

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


  Commit: 945dd9a740958e3c1230f3661edec53a5d858675
      https://github.com/llvm/llvm-project/commit/945dd9a740958e3c1230f3661edec53a5d858675
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

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

  Log Message:
  -----------
  [NFC][Load] Find better place for `mustSuppressSpeculation` (#100794)

And extract `suppressSpeculativeLoadForSanitizers`.

For #100639.


  Commit: 07f3a08c614afe32b845aa44db5a6a0e44ce24a7
      https://github.com/llvm/llvm-project/commit/07f3a08c614afe32b845aa44db5a6a0e44ce24a7
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M llvm/include/llvm/Analysis/Loads.h
    M polly/lib/Analysis/ScopBuilder.cpp
    M polly/lib/Analysis/ScopDetection.cpp

  Log Message:
  -----------
  [NFC][Load] Make `ScanFrom` required parameters (#100789)

In #100773 we will go conservative for sanitizers,
so it's better to pinpoint location consciously.

For #100639.


  Commit: d6081bff5b49c5f6560bdffd3692b8f1247c4843
      https://github.com/llvm/llvm-project/commit/d6081bff5b49c5f6560bdffd3692b8f1247c4843
  Author: Philip Reames <preames at rivosinc.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M llvm/test/Analysis/CostModel/RISCV/cast.ll

  Log Message:
  -----------
  [RISCV][CostModel] Add coverage for non-power-of-2 vector sizes


  Commit: 2f3ae2f625588ea5eb1393db10b83e9e18380770
      https://github.com/llvm/llvm-project/commit/2f3ae2f625588ea5eb1393db10b83e9e18380770
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M llvm/test/Transforms/InstCombine/load.ll
    M llvm/test/Transforms/InstCombine/multiple-uses-load-bitcast-select.ll
    M llvm/test/Transforms/InstCombine/ptr-replace-alloca.ll
    A llvm/test/Transforms/InstCombine/select-load.ll
    M llvm/test/Transforms/InstCombine/strnlen-2.ll
    M llvm/test/Transforms/SROA/phi-and-select.ll
    M llvm/test/Transforms/SROA/phi-with-duplicate-pred.ll
    M llvm/test/Transforms/SROA/select-load.ll

  Log Message:
  -----------
  [NFC][InstCombine][SROA][Asan] Precommit tests affected by #100773 (#100844)

Some optimization need to be undone with
sanitizers by #100773.

For #100639.


  Commit: c66d25d1429fbf49c97ee9cd0195246642178cb7
      https://github.com/llvm/llvm-project/commit/c66d25d1429fbf49c97ee9cd0195246642178cb7
  Author: Egor Zhdan <e_zhdan at apple.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M clang/lib/Sema/SemaAPINotes.cpp
    M clang/test/APINotes/Inputs/Headers/Methods.h

  Log Message:
  -----------
  [APINotes] Do not crash for C++ operators

This fixes a crash during `CXXMethod->getName()` in
`Sema::ProcessAPINotes`: we were trying to get the name of a C++ method
as a string, which fails with an assertion if the name is not a simple
identifier.


  Commit: 708a9a06cba66bc8f739b05646e7d3be9247feee
      https://github.com/llvm/llvm-project/commit/708a9a06cba66bc8f739b05646e7d3be9247feee
  Author: Krystian Stasiowski <sdkrystian at gmail.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Lex/Preprocessor.h
    M clang/include/clang/Parse/Parser.h
    M clang/lib/Lex/PPCaching.cpp
    M clang/lib/Lex/Preprocessor.cpp
    M clang/lib/Parse/ParseCXXInlineMethods.cpp
    M clang/lib/Parse/ParseDecl.cpp
    M clang/lib/Parse/ParseExprCXX.cpp
    A clang/test/CXX/dcl.decl/dcl.meaning/dcl.mptr/p2.cpp
    M clang/test/CXX/temp/temp.res/p3.cpp

  Log Message:
  -----------
  [Clang][Parse] Fix ambiguity with nested-name-specifiers that may declarative (#96364)

Consider the following:
```
template<typename T>
struct A { };

template<typename T>
int A<T>::B::* f(); // error: no member named 'B' in 'A<T>'
```

Although this is clearly valid, clang rejects it because the
_nested-name-specifier_ `A<T>::` is parsed as-if it was declarative,
meaning, we parse it as-if it was the _nested-name-specifier_ in a
redeclaration/specialization. However, we don't (and can't) know whether
the _nested-name-specifier_ is declarative until we see the '`*`' token,
but at that point we have already complained that `A` has no member
named `B`! This patch addresses this bug by adding support for _fully_
unannotated _and_ unbounded tentative parsing, which allows for us to
parse past tokens without having to cache them until we reach a point
where we can guarantee to be past the construct we are disambiguating.

I don't know where the approach taken here is ideal -- alternatives are
welcome. However, the performance impact (as measured by
llvm-compile-time-tracker (https://llvm-compile-time-tracker.com/?config=Overview&stat=instructions%3Au&remote=sdkrystian)
is quite minimal (0.09%, which I plan to further improve).


  Commit: f9e7cba122c2b636ddb975791aadf33c69f3f056
      https://github.com/llvm/llvm-project/commit/f9e7cba122c2b636ddb975791aadf33c69f3f056
  Author: Nathan James <n.james93 at hotmail.co.uk>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/ASTMatchers/ASTMatchersInternal.cpp
    M clang/unittests/ASTMatchers/ASTMatchersNarrowingTest.cpp

  Log Message:
  -----------
  Fix hasName matcher assertion with inline namespaces (#100975)

Fix handling of nodes which can be skipped in the fast path for the
hasName matcher

Fixes #100973


  Commit: 6dba99e14f7e508a5028036b753fa7f84e846307
      https://github.com/llvm/llvm-project/commit/6dba99e14f7e508a5028036b753fa7f84e846307
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M llvm/lib/Analysis/Loads.cpp
    M llvm/test/Transforms/InstCombine/load.ll
    M llvm/test/Transforms/InstCombine/ptr-replace-alloca.ll
    M llvm/test/Transforms/InstCombine/select-load.ll
    M llvm/test/Transforms/InstCombine/strnlen-2.ll
    M llvm/test/Transforms/SROA/phi-and-select.ll
    M llvm/test/Transforms/SROA/phi-with-duplicate-pred.ll
    M llvm/test/Transforms/SROA/select-load.ll

  Log Message:
  -----------
  [InstCombine][asan] Don't speculate loads before `select ptr` (#100773)

Even if memory is valid from `llvm` point of view,
e.g. local alloca, sanitizers have API for user
specific memory annotations.

These annotations can be used to track size of the
local object, e.g. inline vectors may prevent
accesses beyond the current vector size.

So valid programs should not access those parts of
alloca before checking preconditions.

Fixes #100639.


  Commit: 2c376fe96c83443c15e6485d043ebe321904546b
      https://github.com/llvm/llvm-project/commit/2c376fe96c83443c15e6485d043ebe321904546b
  Author: Dimitry Andric <dimitry at andric.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M compiler-rt/lib/profile/InstrProfiling.h

  Log Message:
  -----------
  [InstrProf] Remove duplicate definition of IntPtrT

In 16e74fd48988a (for #82711) a duplicate definition of `IntPtrT` was
added to `InstrProfiling.h`, leading to warnings:

    compiler-rt/lib/profile/InstrProfiling.h:52:15: warning: redefinition of typedef 'IntPtrT' is a C11 feature [-Wtypedef-redefinition]
       52 | typedef void *IntPtrT;
          |               ^
    compiler-rt/lib/profile/InstrProfiling.h:34:15: note: previous definition is here
       34 | typedef void *IntPtrT;
          |               ^

Fix the warnings by removing the duplicate typedef.


  Commit: fb7028237bac1dccd328b6c3150e50e222a0879b
      https://github.com/llvm/llvm-project/commit/fb7028237bac1dccd328b6c3150e50e222a0879b
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M llvm/include/llvm/MC/MCFragment.h
    M llvm/lib/MC/MCFragment.cpp

  Log Message:
  -----------
  [MC] Move some bool members to MCFragment. NFC

Move `AllowAutoPadding` to MCFragment, which reduce the
MCRelaxableFragment size by 8 bytes. While here, also move
`AlignToBundleEnd` next to `HasInstructions`. Functions that create
fragments are slightly shorter due to fewer byte zeroing instructions.

Although fewer in number than MCDataFragments, MCRelaxableFragment
objects still constitute a significant proportion warranting
optimization.
```
% clang -c sqlite3.i -w -g -Xclang -print-stats
...
   2206 assembler             - Number of emitted assembler fragments - align
  83980 assembler             - Number of emitted assembler fragments - data
     84 assembler             - Number of emitted assembler fragments - fill
 169462 assembler             - Number of emitted assembler fragments - total
  11396 assembler             - Number of emitted assembler fragments - relaxable
```

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


  Commit: b3b390b98e90d94d178fb74c15bce92a34c53b10
      https://github.com/llvm/llvm-project/commit/b3b390b98e90d94d178fb74c15bce92a34c53b10
  Author: Julius Alexandre <juliuswoosebert at gmail.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

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

  Log Message:
  -----------
  [SandboxIR][NFC] Fixes for LoadInst::create functions  (#100955)

This patch updates `LoadInst::create()` functions. The end result is four `LoadInst::create()` functions in total, two of which with an `IsVolatile` argument and two without.


  Commit: 7b99b1d4f733ed5e1b206f0b392b0864e7a0d468
      https://github.com/llvm/llvm-project/commit/7b99b1d4f733ed5e1b206f0b392b0864e7a0d468
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M llvm/lib/IR/RuntimeLibcalls.cpp
    M llvm/test/CodeGen/AArch64/exp10-libcall-names.ll
    M llvm/test/CodeGen/X86/exp10-libcall-names.ll

  Log Message:
  -----------
  [Darwin] Fix availability of exp10 for BridgeOS, DriverKit. (#100894)

Same as https://github.com/llvm/llvm-project/pull/98542, but also mark
exp10 available on BridgeOS and DriverKit.

Note that BridgeOS currently is not included by isOSDarwin, but it
probably should.

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


  Commit: 2a612a1b343dcc0d3dd44df4866f6c6af5cc090f
      https://github.com/llvm/llvm-project/commit/2a612a1b343dcc0d3dd44df4866f6c6af5cc090f
  Author: Matthew Weingarten <matt at weingarten.org>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M compiler-rt/lib/memprof/memprof_mapping.h

  Log Message:
  -----------
  [Memprof] Changes `HISTOGRAM_GRANULARITY` from 8U to 8ULL. (#100949)

This changes a bug in memprofiling with histogram where the shadow mask
would be `0xFFFFFFF8` instead of `0xFFFFFFFFFFFFFFF8`, essentially
discarding the upper 32 bits of the address. This can cause different
addresses to be mapped to the same shadow address.


  Commit: 26e455bac0c44d75cb5d544c35e7c8326c91b4f3
      https://github.com/llvm/llvm-project/commit/26e455bac0c44d75cb5d544c35e7c8326c91b4f3
  Author: macurtis-amd <macurtis at amd.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M llvm/include/llvm/Passes/PassBuilder.h
    M llvm/lib/LTO/LTOBackend.cpp
    A llvm/test/LTO/X86/print-pipeline-passes.ll
    M llvm/tools/llc/NewPMDriver.cpp
    M llvm/tools/opt/NewPMDriver.cpp

  Log Message:
  -----------
  [lld][LTO] Teach LTO to print pipeline passes (#101018)

I found this useful while debugging code generation differences between
old and new offloading drivers.
No functional change (intended).


  Commit: 62bd08acedc88d8976a017f7f6818f3167dfa697
      https://github.com/llvm/llvm-project/commit/62bd08acedc88d8976a017f7f6818f3167dfa697
  Author: Dimitry Andric <dimitry at andric.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

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

  Log Message:
  -----------
  [compiler-rt] Fix format string warnings in FreeBSD DumpAllRegisters (#101072)

On FreeBSD amd64 (aka x86_64), registers are always defined as
`int64_t`, which in turn is equivalent to `long`. This leads to a number
of warnings in `DumpAllRegisters()`:

compiler-rt/lib/sanitizer_common/sanitizer_linux.cpp:2245:31: warning:
format specifies type 'unsigned long long' but the argument has type
'__register_t' (aka 'long') [-Wformat]
     2245 |   Printf("rax = 0x%016llx  ", ucontext->uc_mcontext.mc_rax);
          |                   ~~~~~~~     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
          |                   %016lx
compiler-rt/lib/sanitizer_common/sanitizer_linux.cpp:2246:31: warning:
format specifies type 'unsigned long long' but the argument has type
'__register_t' (aka 'long') [-Wformat]
     2246 |   Printf("rbx = 0x%016llx  ", ucontext->uc_mcontext.mc_rbx);
          |                   ~~~~~~~     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
          |                   %016lx
    ... more of these ...

Fix it by using the `lx` format.


  Commit: cfb92be0a9cdd0f4595100c5add4e2795a44134e
      https://github.com/llvm/llvm-project/commit/cfb92be0a9cdd0f4595100c5add4e2795a44134e
  Author: vporpo <vporpodas at google.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M llvm/include/llvm/SandboxIR/SandboxIR.h
    M llvm/include/llvm/SandboxIR/Tracker.h
    M llvm/include/llvm/SandboxIR/Use.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 CallBrInst (#100823)

This patch implements sandboxir::CallBrInst which mirrors
llvm::CallBrInst.

LLVM IR does not expose the Uses to DefaultDest and IndirectDest so we
need special Tracker objects for both of setters.


  Commit: 842a332f11f53c698fa0560505e533ecdca28876
      https://github.com/llvm/llvm-project/commit/842a332f11f53c698fa0560505e533ecdca28876
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

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

  Log Message:
  -----------
  [NVPTX] Fix DwarfFrameBase construction (#101000)

The `{0}` here was initializing the first union member `Register`,
rather than the union member used by CFA, which is `Offset`. Prior to
https://github.com/llvm/llvm-project/pull/99263 this was harmless, but
now they have different layout, leading to test failures on some
platforms (at least i686 and s390x).


  Commit: 38e671ab5221ec3d355fe4e3f70fdcd6f4809532
      https://github.com/llvm/llvm-project/commit/38e671ab5221ec3d355fe4e3f70fdcd6f4809532
  Author: Justin Bogner <mail at justinbogner.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

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

  Log Message:
  -----------
  [DXIL][Analysis] Use setters for dxil::ResourceInfo initialization. NFC

This simplifies making sure we set all of the members of the unions
and adds asserts to help catch if we do something wrong.

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


  Commit: a94edb6b8e321a46fe429934236aaa4e2e9fb97f
      https://github.com/llvm/llvm-project/commit/a94edb6b8e321a46fe429934236aaa4e2e9fb97f
  Author: Justin Bogner <mail at justinbogner.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M llvm/include/llvm/Analysis/DXILResource.h
    M llvm/lib/Analysis/DXILResource.cpp
    M llvm/unittests/Analysis/DXILResourceTest.cpp

  Log Message:
  -----------
  [DXIL][Analysis] Make alignment on StructuredBuffer optional

HLSL allows StructuredBuffer<> to be defined with scalar or
up-to-4-element vectors as well as with structs, but when doing so
`dxc` doesn't set the alignment. Emulate this.

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


  Commit: c22171f12fa9f260e2525cf61b93c136889e17f2
      https://github.com/llvm/llvm-project/commit/c22171f12fa9f260e2525cf61b93c136889e17f2
  Author: Justin Bogner <mail at justinbogner.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M llvm/include/llvm/Analysis/DXILResource.h
    M llvm/lib/Analysis/DXILResource.cpp
    M llvm/unittests/Analysis/DXILResourceTest.cpp

  Log Message:
  -----------
  Revert "[DXIL][Analysis] Make alignment on StructuredBuffer optional" (#101088)

Seeing build failures, reverting to investigate.

Reverts llvm/llvm-project#100697


  Commit: bb4aeb66ab4f39901ef6c1d01baf8b82b81cecfb
      https://github.com/llvm/llvm-project/commit/bb4aeb66ab4f39901ef6c1d01baf8b82b81cecfb
  Author: Justin Bogner <mail at justinbogner.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp

  Log Message:
  -----------
  [SPIRV] Don't specialize MachineModuleInfo to access the LLVMContext. NFC (#101085)

The MachineModuleInfo reference was removed from the MachineFunction in
#100357, which broke this code. Instead of finding another way to get at
the MMI, just avoid using it - we can get at the LLVMContext from the
MachineFunction itself.


  Commit: c99bd3ceffc81be0209324e6c4fceeffa9107e4d
      https://github.com/llvm/llvm-project/commit/c99bd3ceffc81be0209324e6c4fceeffa9107e4d
  Author: Mircea Trofin <mtrofin at google.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

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

  Log Message:
  -----------
  [ctx_prof] Extend `WorkloadImportsManager` to use the contextual profile (#98682)

Keeping the json-based input as it's useful for diagnostics or for driving the import by other means than contextual composition.

The support for the contextual profile is just another modality for constructing the import list (`WorkloadImportsManager::Workloads`).

Everything else - i.e. the actual importing logic - is already independent from how that list was obtained.


  Commit: 2c3eb8db057b9d58acd4735999f0f5d5d8d55b0d
      https://github.com/llvm/llvm-project/commit/2c3eb8db057b9d58acd4735999f0f5d5d8d55b0d
  Author: Daniel Martinez <danielpedromartinez at duck.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

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

  Log Message:
  -----------
  [nsan] Remove mallopt from nsan_interceptors (#101055)

Fixes a build failure on 19.1.0-rc1 when building on linux with musl as
the libc

musl does not provide mallopt, whereas glibc does. mallopt has
portability issues with other libc implementations. Just remove the use.

Co-authored-by: Daniel Martinez <danielmartinez at cock.li>


  Commit: f9765a28a14c48bd900bbea4d0502c9f446d6392
      https://github.com/llvm/llvm-project/commit/f9765a28a14c48bd900bbea4d0502c9f446d6392
  Author: vporpo <vporpodas at google.com>
  Date:   2024-07-29 (Mon, 29 Jul 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 GetElementPtrInst (#101078)

This patch implements sandboxir::GetElementPtrInst which mirrors
llvm::GetElementPtrInst.


  Commit: 17993eb162c513fd03753237c5c8229fd629148b
      https://github.com/llvm/llvm-project/commit/17993eb162c513fd03753237c5c8229fd629148b
  Author: Matthew Weingarten <matt at weingarten.org>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M llvm/lib/Transforms/Instrumentation/MemProfiler.cpp
    A llvm/test/Instrumentation/HeapProfiler/basic-histogram.ll

  Log Message:
  -----------
  [Memprof] Adds instrumentation support for memprof with histograms. (#100834)

This patch allows running `-fmemory-profile` without the flag
`-memprof-use-callbacks`, meaning the `RecordAccessesHistogram` is
injected into IR as a sequence of instructions. This significantly
increases performance of the instrumented binary.


  Commit: 460a86d8c7b5cd279c437c7e8f611f66a64bda08
      https://github.com/llvm/llvm-project/commit/460a86d8c7b5cd279c437c7e8f611f66a64bda08
  Author: Thurston Dang <thurston at google.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    A llvm/test/Instrumentation/MemorySanitizer/AArch64/neon_vst_lane.ll

  Log Message:
  -----------
  [msan] Precommit tests for Arm NEON VST with lanes (#100645)

MSan does not yet correctly instrument the st{2,3,4}lane intrinsics but
the test should still pass.

st1lane does not map to an Arm NEON instruction and is already correctly
instrumented.


  Commit: 76605f5718e07bc0e551620a39a0853cb6fc81f5
      https://github.com/llvm/llvm-project/commit/76605f5718e07bc0e551620a39a0853cb6fc81f5
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/test/Driver/linker-wrapper.c
    M clang/test/Driver/openmp-offload-gpu.c
    M clang/tools/clang-linker-wrapper/ClangLinkerWrapper.cpp
    M clang/tools/clang-linker-wrapper/LinkerWrapperOpts.td

  Log Message:
  -----------
  [LinkerWrapper] Make `-Xoffload-linker` match `-Xlinker` semantics (#101032)

Summary:
`-Xlinker` is supposed to pass options to the linker, while
`-Xoffload-linker` instead passes it to the `clang` job. This is
unintuitive and results in unnecessarily complex command lines. Because
passing it to the clang job is still useful, I've added
`-device-compiler`. This changes the behavior of the flag, but I think
it should be fine in this case since it's likely rarely used and has a
direct replacement.

---------

Co-authored-by: Joel E. Denny <jdenny.ornl at gmail.com>


  Commit: 42326c7170283efce84b4c29b3bc25836ed88301
      https://github.com/llvm/llvm-project/commit/42326c7170283efce84b4c29b3bc25836ed88301
  Author: Julius Alexandre <juliuswoosebert at gmail.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

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

  Log Message:
  -----------
  [SandboxIR] Added new StoreInst::create() functions with isVolatile arg (#100961)

This patch implements new create() functions with an `IsVolatile` argument for sandboxir::StoreInst.


  Commit: 03e1eb29e7169ddb0804b1d0b9d71d6d2aaf531d
      https://github.com/llvm/llvm-project/commit/03e1eb29e7169ddb0804b1d0b9d71d6d2aaf531d
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/test/CodeGen/RISCV/rvv/trunc-select-to-max-usat.ll

  Log Message:
  -----------
  [RISCV] Replace hasStdExtV with hasVInstructions.

This prevents excluding Zve*


  Commit: 3de76e4f57bdba612ddca7ac53b2f5787929391a
      https://github.com/llvm/llvm-project/commit/3de76e4f57bdba612ddca7ac53b2f5787929391a
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/test/CodeGen/RISCV/pr94265.ll

  Log Message:
  -----------
  [RISCV] Replace hasStdExtV with hasVInstructions in isTruncateFree.

This prevents excluding the embedded vector extensions Zve*.


  Commit: ee6d932b4f258ae36c5f75ae1ab52656dde49c83
      https://github.com/llvm/llvm-project/commit/ee6d932b4f258ae36c5f75ae1ab52656dde49c83
  Author: Michael Jones <michaelrj at google.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
    M utils/bazel/llvm-project-overlay/libc/test/src/unistd/BUILD.bazel

  Log Message:
  -----------
  [libc][bazel] Remove tid tests from bazel (#101109)

In patch https://github.com/llvm/llvm-project/pull/100915 the tid code
was reverted. The bazel build wasn't updated, leaving some broken
targets. This patch fixes those.


  Commit: 3a9ef4e69a3fec3203bd3e1caa53edf4b76843cf
      https://github.com/llvm/llvm-project/commit/3a9ef4e69a3fec3203bd3e1caa53edf4b76843cf
  Author: Wei Wang <apollo.mobility at gmail.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    A clang/test/CodeGenCoroutines/coro-elide-thinlto.cpp
    M llvm/lib/Passes/PassBuilderPipelines.cpp
    M llvm/test/Other/new-pm-thinlto-prelink-defaults.ll
    M llvm/test/Other/new-pm-thinlto-prelink-pgo-defaults.ll
    M llvm/test/Other/new-pm-thinlto-prelink-samplepgo-defaults.ll

  Log Message:
  -----------
  [Pipelines] Do not run CoroSplit and CoroCleanup in LTO pre-link pipeline (#100205)

This is re-land of #90310 after making asan skip pre-split coroutines in
#99415.

Skip CoroSplit and CoroCleanup in LTO pre-link pipeline so that
CoroElide can happen after callee coroutine is imported into caller's
module in ThinLTO.


  Commit: 73c961a3345c697f40e2148318f34f5f347701c1
      https://github.com/llvm/llvm-project/commit/73c961a3345c697f40e2148318f34f5f347701c1
  Author: Owen Pan <owenpiano at gmail.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

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

  Log Message:
  -----------
  [clang-format] Fix misannotations of `<` in ternary expressions (#100980)

Fixes #100300.


  Commit: 40b4fd7a3e81d32b29364a1b15337bcf817659c0
      https://github.com/llvm/llvm-project/commit/40b4fd7a3e81d32b29364a1b15337bcf817659c0
  Author: Chen Zheng <czhengsz at cn.ibm.com>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

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

  Log Message:
  -----------
  [NFC] fix build failure (#100993)

Fix the build failure caused by
https://github.com/llvm/llvm-project/pull/94944

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


  Commit: c9cc6c4772df6fc6f30d1e6831b83fe4db5f2044
      https://github.com/llvm/llvm-project/commit/c9cc6c4772df6fc6f30d1e6831b83fe4db5f2044
  Author: Jannick Kremer <51118500+DeinAlptraum at users.noreply.github.com>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

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

  Log Message:
  -----------
  [Clang][Sema][NFC] Remove duplicate check in if-condition (#101070)

Resolves #101041


  Commit: 9b14831a4ade78d06754f2112aead3b99f73a98a
      https://github.com/llvm/llvm-project/commit/9b14831a4ade78d06754f2112aead3b99f73a98a
  Author: Julius Alexandre <juliuswoosebert at gmail.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M llvm/unittests/SandboxIR/SandboxIRTest.cpp

  Log Message:
  -----------
  [SandboxIR][NFC] Removed comments from LoadInst test case (#101099)


  Commit: 6d02f62e4af90295a6e0386e3e96afe518777c17
      https://github.com/llvm/llvm-project/commit/6d02f62e4af90295a6e0386e3e96afe518777c17
  Author: Han-Chung Wang <hanhan0912 at gmail.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

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

  Log Message:
  -----------
  [mlir][linalg] Add vectorization support for minnumf/maxnumf reductions. (#101092)

This is a follow-up for
https://discourse.llvm.org/t/rfc-fix-floating-point-max-and-min-operations-in-mlir/72671

The ops were splitted to two version, and the vectorization support for
one of them is missing.

The revision also renames the existing lit tests accordingly, which
explicitly puts `maximumf/minimumf` to the function names.


  Commit: 677796cab327409012bab0e374e743602435edaf
      https://github.com/llvm/llvm-project/commit/677796cab327409012bab0e374e743602435edaf
  Author: jameshu15869 <55058507+jameshu15869 at users.noreply.github.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M libc/benchmarks/gpu/CMakeLists.txt
    M libc/benchmarks/gpu/LibcGpuBenchmark.cpp
    M libc/benchmarks/gpu/LibcGpuBenchmark.h
    M libc/benchmarks/gpu/src/CMakeLists.txt
    A libc/benchmarks/gpu/src/math/CMakeLists.txt
    A libc/benchmarks/gpu/src/math/sin_benchmark.cpp
    M libc/benchmarks/gpu/timing/amdgpu/timing.h
    M libc/benchmarks/gpu/timing/nvptx/timing.h

  Log Message:
  -----------
  [libc] Add Generic and NVPTX Sin Benchmark (#99795)

This PR adds sin benchmarking for a range of values and on a
pregenerated random distribution.


  Commit: 7cf67d499287b22c6e2aa118009ed06eaef5e5d6
      https://github.com/llvm/llvm-project/commit/7cf67d499287b22c6e2aa118009ed06eaef5e5d6
  Author: Michael Liao <michael.hliao at gmail.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

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

  Log Message:
  -----------
  [clang][Sema] Remove dead code. NFC


  Commit: 6bd5fd35063cd14b0a56bc6f7fb1e7b6e1ac56d5
      https://github.com/llvm/llvm-project/commit/6bd5fd35063cd14b0a56bc6f7fb1e7b6e1ac56d5
  Author: Med Ismail Bennani <ismail at bennani.ma>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/CMakeLists.txt
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedProcessPythonInterface.cpp
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedProcessPythonInterface.h
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedProcessPythonInterface/CMakeLists.txt
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedProcessPythonInterface/ScriptedProcessPythonInterface.cpp
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedProcessPythonInterface/ScriptedProcessPythonInterface.h
    M lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp

  Log Message:
  -----------
  [lldb] Reland 2402b3213c2f with `-H -MM` to debug the windows build issue

This patch relands 2402b3213c2f to investigate the ambigious typedef
issue happening on the windows bots:

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

However this patch adds the `-H` & `-MM` compiler flags when building
the ScriptedProcessPythonInterface library to be able to investigate the
include order issue.

This patch will be revert after 1 failing run on the windows bot.

Signed-off-by: Med Ismail Bennani <ismail at bennani.ma>


  Commit: bbde3f6e9df018975bc84fa23ba510360b6d715c
      https://github.com/llvm/llvm-project/commit/bbde3f6e9df018975bc84fa23ba510360b6d715c
  Author: Thurston Dang <thurston at google.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M llvm/lib/Transforms/Instrumentation/MemorySanitizer.cpp
    M llvm/test/Instrumentation/MemorySanitizer/AArch64/neon_vst.ll
    M llvm/test/Instrumentation/MemorySanitizer/AArch64/neon_vst_float.ll
    M llvm/test/Instrumentation/MemorySanitizer/AArch64/neon_vst_origins.ll

  Log Message:
  -----------
  [msan] Support vst1x_{2,3,4} and vst_{2,3,4} with floating-point parameters (#100644)

Cloning the vst_ intrinsics to apply them to the shadows did not work if
the arguments were floating-point, since the shadows are integers. This
patch changes MSan to create an intrinsic of the correct integer types.

Additionally, this patch adds support for vst1x_{2,3,4}; these can be
handled similarly to vst_{2,3,4}, since in all cases we are adapting the
corresponding intrinsic.
    
This also updates the tests.


  Commit: 8425aa24d802c73e24368a81a4a96afc158497aa
      https://github.com/llvm/llvm-project/commit/8425aa24d802c73e24368a81a4a96afc158497aa
  Author: Med Ismail Bennani <ismail at bennani.ma>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/CMakeLists.txt
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedProcessPythonInterface.cpp
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedProcessPythonInterface.h
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedProcessPythonInterface/CMakeLists.txt
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedProcessPythonInterface/ScriptedProcessPythonInterface.cpp
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedProcessPythonInterface/ScriptedProcessPythonInterface.h
    M lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp

  Log Message:
  -----------
  Revert "[lldb] Reland 2402b3213c2f with `-H -MM` to debug the windows build issue"

This reverts commit 6bd5fd35063cd14b0a56bc6f7fb1e7b6e1ac56d5.


  Commit: e90c21831f375d0469b4213ab71cc7de0cd5ab20
      https://github.com/llvm/llvm-project/commit/e90c21831f375d0469b4213ab71cc7de0cd5ab20
  Author: Luke Lau <luke at igalia.com>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-int-buildvec.ll

  Log Message:
  -----------
  [RISCV] Use APInt in isSimpleVIDSequence to account for index overflow (#100072)

At zvl1024b, we may have legal fixed length vectors where a vid.v would
overflow at i8, e.g. <512 x i8>.

When lowering constant build_vectors, isSimpleVIDSequence used uint64_t
to model the vid.v sequence which meant it didn't account for the fact
that it could overflow in these larger types.

This patch fixes it by modelling the sequence with an SEW-wide APInt so
if it does overflow the loop that checks/calculates the addend will
detect it and bail.

Fixes #99729


  Commit: 4ed66cb4e14303435d0df30f428d0758fe880b57
      https://github.com/llvm/llvm-project/commit/4ed66cb4e14303435d0df30f428d0758fe880b57
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.cpp
    M llvm/test/Analysis/CostModel/AMDGPU/fma.ll
    M llvm/test/Analysis/CostModel/AMDGPU/fmuladd.ll

  Log Message:
  -----------
  AMDGPU: Improve cost handling of fma/fmuladd (#100798)

We were overcounting the cost of fast f32 FMA. Also address todo
and handle fmuladd (which I'm just assuming lowers to FMA, the slow FMA
expansion is about as fast on slow targets anyway).


  Commit: 524795926be00ac4ce5ca1c0db6f81d8bb18e609
      https://github.com/llvm/llvm-project/commit/524795926be00ac4ce5ca1c0db6f81d8bb18e609
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.cpp
    M llvm/test/Analysis/CostModel/AMDGPU/copysign.ll
    M llvm/test/Transforms/SLPVectorizer/AMDGPU/slp-v2f16.ll

  Log Message:
  -----------
  AMDGPU: Enable vectorization of v2f16 copysign (#100799)


  Commit: ad8026587464f29e53c673e892d646a4b94f138b
      https://github.com/llvm/llvm-project/commit/ad8026587464f29e53c673e892d646a4b94f138b
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

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

  Log Message:
  -----------
  [RISCV] Qualify all XCV predicates with !is64Bit. (#101074)

The tablegen patterns all have isRV32. I did not check if any of them
could naively support RV64.

Fixes #101067 and probably other bugs like it we haven't found yet.


  Commit: 43de4e03a3ebd2ce1a035fdd6cfa4b107817fe99
      https://github.com/llvm/llvm-project/commit/43de4e03a3ebd2ce1a035fdd6cfa4b107817fe99
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-07-29 (Mon, 29 Jul 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/GISel/RISCVCallLowering.cpp
    M llvm/lib/Target/RISCV/RISCVFeatures.td
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfoVPseudos.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoVSDPatterns.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoVVLPatterns.td
    M llvm/lib/Target/RISCV/RISCVSubtarget.h

  Log Message:
  -----------
  [RISCV] Rename hasVInstructionsBF16 to hasVInstructionsBF16Minimal. NFC (#101080)

This makes it more consistent with Zvfhmin since it is not a complete
bf16 implementation.


  Commit: 3fcc4f28ed808d72cb3c6bc45f9bca891ae5ca48
      https://github.com/llvm/llvm-project/commit/3fcc4f28ed808d72cb3c6bc45f9bca891ae5ca48
  Author: Yeting Kuo <46629943+yetingk at users.noreply.github.com>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

  Changed paths:
    M clang/lib/CodeGen/CGStmt.cpp
    A clang/test/CodeGen/inline-asm-size-zero.c

  Log Message:
  -----------
  [clang][CodeGen] Don't crash on output whose size is zero. (#99849)

This fixes issue #63878 caused by creating an integer with zero
bitwidth.


  Commit: 28f9575b41ce5a184baeaab95f5db74fb3ad176f
      https://github.com/llvm/llvm-project/commit/28f9575b41ce5a184baeaab95f5db74fb3ad176f
  Author: Dmitry Chestnykh <dm.chestnykh at gmail.com>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

  Changed paths:
    M compiler-rt/lib/sanitizer_common/sanitizer_linux.cpp
    M compiler-rt/test/sanitizer_common/TestCases/Linux/dump_registers_aarch64.cpp
    M compiler-rt/test/sanitizer_common/TestCases/Linux/dump_registers_arm.cpp
    M compiler-rt/test/sanitizer_common/TestCases/Linux/dump_registers_i386.cpp
    M compiler-rt/test/sanitizer_common/TestCases/Linux/dump_registers_x86_64.cpp

  Log Message:
  -----------
  [compiler-rt] Require glibc for DumpAllRegisters on Linux (#101131)

For example musl doesn't provide REG_R* definitions for ARM

#100398


  Commit: 3e2631c9c62990467eca3e173f714367d7e7c0dd
      https://github.com/llvm/llvm-project/commit/3e2631c9c62990467eca3e173f714367d7e7c0dd
  Author: hev <wangrui at loongson.cn>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

  Changed paths:
    M llvm/lib/Target/LoongArch/LoongArchInstrInfo.td
    M llvm/test/CodeGen/LoongArch/rotl-rotr.ll

  Log Message:
  -----------
  [LoongArch] Optimize codegen for ISD::ROTL (#100344)

The LoongArch rotr.{w,d} instruction ignores the high bits of the shift
operand, allowing it to generate more efficient code using the constant
zero register.


  Commit: 0e6f64cd5e5a06bd78542d5541a762154546ced3
      https://github.com/llvm/llvm-project/commit/0e6f64cd5e5a06bd78542d5541a762154546ced3
  Author: hev <wangrui at loongson.cn>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

  Changed paths:
    M llvm/lib/Target/LoongArch/LoongArchExpandPseudoInsts.cpp
    M llvm/lib/Target/LoongArch/LoongArchInstrInfo.cpp
    M llvm/lib/Target/LoongArch/LoongArchInstrInfo.h
    M llvm/lib/Target/LoongArch/LoongArchInstrInfo.td
    M llvm/test/CodeGen/LoongArch/code-models.ll
    M llvm/test/CodeGen/LoongArch/expand-call.ll
    M llvm/test/CodeGen/LoongArch/global-address.ll
    M llvm/test/CodeGen/LoongArch/global-variable-code-model.ll
    M llvm/test/CodeGen/LoongArch/machinelicm-address-pseudos.ll
    M llvm/test/CodeGen/LoongArch/psabi-restricted-scheduling.ll
    M llvm/test/CodeGen/LoongArch/tls-models.ll

  Log Message:
  -----------
  [LoongArch] Reimplement to prevent Pseudo{CALL, LA*}_LARGE instruction reordering (#100099)

The Pseudo{CALL, LA*}_LARGE instruction patterns specified in psABI
v2.30 cannot be reordered. This patch sets scheduling boundaries for
these instructions to prevent reordering. The Pseudo{CALL, LA*}_LARGE
instruction is moved back to Pre-RA expansion, which will help with
subsequent address calculation optimizations.


  Commit: 2d6f4d22ef8be48db151019bb763de725104857a
      https://github.com/llvm/llvm-project/commit/2d6f4d22ef8be48db151019bb763de725104857a
  Author: David CARLIER <devnexen at gmail.com>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

  Changed paths:
    M compiler-rt/lib/sanitizer_common/sanitizer_linux.cpp
    A compiler-rt/test/sanitizer_common/TestCases/NetBSD/dump_registers_i386.cpp
    A compiler-rt/test/sanitizer_common/TestCases/NetBSD/dump_registers_x86_64.cpp

  Log Message:
  -----------
  [compiler-rt] DumpAllRegisters implementation for netbsd i386/x86_64. (#99743)


  Commit: 84ad292f343e0b0b821fc18447a20c59530f9ec7
      https://github.com/llvm/llvm-project/commit/84ad292f343e0b0b821fc18447a20c59530f9ec7
  Author: WANG Rui <wangrui at loongson.cn>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

  Changed paths:
    M llvm/test/CodeGen/LoongArch/inline-asm-constraint-m.ll
    A llvm/test/CodeGen/LoongArch/merge-base-offset.ll

  Log Message:
  -----------
  [LoongArch] Pre-commit tests for merge base offset. NFC


  Commit: 3d149123f46cee5ac8d961c6bf77c5c566f1e410
      https://github.com/llvm/llvm-project/commit/3d149123f46cee5ac8d961c6bf77c5c566f1e410
  Author: Rainer Orth <ro at gcc.gnu.org>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

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

  Log Message:
  -----------
  [sanitizer_common][test] Always skip select allocator tests on SPARC V9 (#100530)

Two allocator tests `FAIL` on Linux/sparc64:
```
  SanitizerCommon-Unit :: ./Sanitizer-sparcv9-Test/SanitizerCommon/CombinedAllocator32Compact
  SanitizerCommon-Unit :: ./Sanitizer-sparcv9-Test/SanitizerCommon/SizeClassAllocator32Iteration
```
The failure mode is the same on Solaris/sparcv9, where those tests are
already disabled since 0f69cbe2694a4740e6db5b99bd81a26746403072.
Therefore, this patch skips them on SPARC in general.

Tested on `sparc64-unknown-linux-gnu` and `sparcv9-sun-solaris2.11`.


  Commit: 9eefe065bb2752b0db9ed553d2406e9a15ce349e
      https://github.com/llvm/llvm-project/commit/9eefe065bb2752b0db9ed553d2406e9a15ce349e
  Author: Rainer Orth <ro at gcc.gnu.org>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

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

  Log Message:
  -----------
  [sanitizer_common][test] Fix SanitizerIoctl/KVM_GET_* tests on Linux/… (#100532)

…sparc64

Two ioctl tests `FAIL` on Linux/sparc64 (both 32 and 64-bit):
```
  SanitizerCommon-Unit :: ./Sanitizer-sparc-Test/SanitizerIoctl/KVM_GET_LAPIC
  SanitizerCommon-Unit :: ./Sanitizer-sparc-Test/SanitizerIoctl/KVM_GET_MP_STATE
```
like
```
compiler-rt/lib/sanitizer_common/tests/./Sanitizer-sparc-Test --gtest_filter=SanitizerIoctl.KVM_GET_LAPIC
--
compiler-rt/lib/sanitizer_common/tests/sanitizer_ioctl_test.cpp:91: Failure
Value of: res
  Actual: false
Expected: true

compiler-rt/lib/sanitizer_common/tests/sanitizer_ioctl_test.cpp:92: Failure
Expected equality of these values:
  ioctl_desc::WRITE
    Which is: 2
  desc.type
    Which is: 1
```
The problem is that Linux/sparc64, like Linux/mips, uses a different
layout for the `ioctl` `request` arg than most other Linux targets as
can be seen in `sanitizer_platform_limits_posix.h` (`IOC_*`). Therefore,
this patch makes the tests use the correct one.

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


  Commit: 1c53b907bd6348138a59da270836fc9b4c161a07
      https://github.com/llvm/llvm-project/commit/1c53b907bd6348138a59da270836fc9b4c161a07
  Author: Rainer Orth <ro at gcc.gnu.org>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

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

  Log Message:
  -----------
  [sanitizer_common] Don't use syscall(SYS_clone) on Linux/sparc64 (#100534)

```
  SanitizerCommon-Unit :: ./Sanitizer-sparc-Test/SanitizerCommon/StartSubprocessTest
```
and every single test using the `llvm-symbolizer` `FAIL` on
Linux/sparc64 in a very weird way: when using `StartSubprocess`, there's
a call to `internal_fork`, but we never reach `internal_execve`.
`internal_fork` is implemented using `syscall(SYS_clone)`. The calling
convention of that syscall already varies considerably between targets,
but as documented in `clone(2)`, SPARC again is widely different.
Instead of trying to match `glibc` here, this patch just calls `__fork`.

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


  Commit: 94394ca980f8ecbd845155d2170cfd865e4d62dc
      https://github.com/llvm/llvm-project/commit/94394ca980f8ecbd845155d2170cfd865e4d62dc
  Author: Rainer Orth <ro at gcc.gnu.org>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

  Changed paths:
    M compiler-rt/test/sanitizer_common/TestCases/Linux/signal_line.cpp

  Log Message:
  -----------
  [sanitizer_common] Fix signal_line.cpp on SPARC (#100535)

```
  SanitizerCommon-ubsan-sparc-Linux :: Linux/signal_line.cpp
```
currently `FAIL`s on Linux/sparc64 (32 and 64-bit) for `n == 2`. Instead
of the expected `SIGSEGV`, the test dies with `SIGBUS`. `strace` reveals
that this is due to a unaligned access:
```
--- SIGBUS {si_signo=SIGBUS, si_code=BUS_ADRALN, si_addr=0x1} ---
```
which is to be expected on a strict-alignment target like SPARC. Fixed
by changing the invalid pointer to be better aligned.

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


  Commit: 7cecbdfe4eac3fd7268532426fb6b13e51b8720d
      https://github.com/llvm/llvm-project/commit/7cecbdfe4eac3fd7268532426fb6b13e51b8720d
  Author: Rainer Orth <ro at gcc.gnu.org>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

  Changed paths:
    M compiler-rt/test/sanitizer_common/TestCases/Linux/signal_send.cpp

  Log Message:
  -----------
  [sanitizer_common] Adjust signal_send.cpp for Linux/sparc64 (#100538)

```
  SanitizerCommon-ubsan-sparc-Linux :: Linux/signal_send.cpp
```
currently `FAIL`s on Linux/sparc64 (32 and 64-bit). Instead of the
expected values for `SIGUSR1` (`10`) and `SIGUSR1` (`12`), that target
uses `30` and `31`.

On Linux/x86_64, the signals get their values from
`x86_64-linux-gnu/bits/signum-generic.h`, to be overridden in
`x86_64-linux-gnu/bits/signum.h`. On Linux/sparc64 OTOH, the definitions
are from `sparc64-linux-gnu/bits/signum-arch.h` and remain that way.
There's no `signum.h` at all.

The patch allows for both values.

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


  Commit: 1c25f2cd470c2882e422b66d0482f5a120960394
      https://github.com/llvm/llvm-project/commit/1c25f2cd470c2882e422b66d0482f5a120960394
  Author: Rainer Orth <ro at gcc.gnu.org>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

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

  Log Message:
  -----------
  [sanitizer_common][test] Fix InternalMmapWithOffset on 32-bit Linux/s… (#101011)

…parc64

```
  SanitizerCommon-Unit :: ./Sanitizer-sparc-Test/SanitizerCommon/InternalMmapWithOffset

```
`FAIL`s on 32-bit Linux/sparc64:
```
projects/compiler-rt/lib/sanitizer_common/tests/./Sanitizer-sparc-Test --gtest_filter=SanitizerCommon.InternalMmapWithOffset
--
compiler-rt/lib/sanitizer_common/tests/sanitizer_libc_test.cpp:335: Failure
Expected equality of these values:
  'A'
    Which is: 'A' (65, 0x41)
  p[0]
    Which is: '\0'
```
It turns out the `pgoffset` arg to `mmap2` is passed incorrectly in this
case, unlike the 64-bit test. The caller, `MapWritableFileToMemory`,
passes an `u64` arg, while `mmap2` expects an `off_t`. This patch casts
the arg accordingly.

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


  Commit: fcd6bd5587cc376cd8f43b60d1c7d61fdfe0f535
      https://github.com/llvm/llvm-project/commit/fcd6bd5587cc376cd8f43b60d1c7d61fdfe0f535
  Author: Rainer Orth <ro at gcc.gnu.org>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

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

  Log Message:
  -----------
  [sanitizer_common] Fix internal_*stat on Linux/sparc64 (#101012)

```
  SanitizerCommon-Unit :: ./Sanitizer-sparcv9-Test/SanitizerCommon/FileOps
```
`FAIL`s on 64-bit Linux/sparc64:
```
projects/compiler-rt/lib/sanitizer_common/tests/./Sanitizer-sparcv9-Test --gtest_filter=SanitizerCommon.FileOps
--
compiler-rt/lib/sanitizer_common/tests/sanitizer_libc_test.cpp:144: Failure
Expected equality of these values:
  len1 + len2
    Which is: 10
  fsize
    Which is: 1721875535
```
The issue is similar to the mips64 case: the Linux/sparc64 `*stat`
syscalls take a `struct kernel_stat64 *` arg. Also the syscalls actually
used differ.

This patch handles this, adopting the mips64 code to avoid too much
duplication.

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


  Commit: abc2fe31fc622c4eab3766d739576110eb6f16c3
      https://github.com/llvm/llvm-project/commit/abc2fe31fc622c4eab3766d739576110eb6f16c3
  Author: Alexander Pivovarov <pivovaa at amazon.com>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

  Changed paths:
    M clang/lib/AST/MicrosoftMangle.cpp
    M llvm/include/llvm/ADT/APFloat.h
    M llvm/lib/Support/APFloat.cpp
    M llvm/unittests/ADT/APFloatTest.cpp

  Log Message:
  -----------
  [APFloat] Add support for f8E3M4 IEEE 754 type (#99698)

This PR adds `f8E4M3` type to APFloat.

`f8E3M4` type  follows IEEE 754 convention

```c
f8E3M4 (IEEE 754)
- Exponent bias: 3
- Maximum stored exponent value: 6 (binary 110)
- Maximum unbiased exponent value: 6 - 3 = 3
- Minimum stored exponent value: 1 (binary 001)
- Minimum unbiased exponent value: 1 − 3 = −2
- Precision specifies the total number of bits used for the significand (mantissa), 
    including implicit leading integer bit = 4 + 1 = 5
- Follows IEEE 754 conventions for representation of special values
- Has Positive and Negative zero
- Has Positive and Negative infinity
- Has NaNs

Additional details:
- Max exp (unbiased): 3
- Min exp (unbiased): -2
- Infinities (+/-): S.111.0000
- Zeros (+/-): S.000.0000
- NaNs: S.111.{0,1}⁴ except S.111.0000
- Max normal number: S.110.1111 = +/-2^(6-3) x (1 + 15/16) = +/-2^3 x 31 x 2^(-4) = +/-15.5
- Min normal number: S.001.0000 = +/-2^(1-3) x (1 + 0) = +/-2^(-2)
- Max subnormal number: S.000.1111 = +/-2^(-2) x 15/16 = +/-2^(-2) x 15 x 2^(-4) = +/-15 x 2^(-6)
- Min subnormal number: S.000.0001 = +/-2^(-2) x 1/16 =  +/-2^(-2) x 2^(-4) = +/-2^(-6)
```

Related PRs:
- [PR-97179](https://github.com/llvm/llvm-project/pull/97179) [APFloat]
Add support for f8E4M3 IEEE 754 type


  Commit: 2b23e6c8d6a28ce1c134d1b6b322e35eec9d98e4
      https://github.com/llvm/llvm-project/commit/2b23e6c8d6a28ce1c134d1b6b322e35eec9d98e4
  Author: Observer007 <45875558+Observer007 at users.noreply.github.com>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/NVGPU/IR/NVGPU.td
    M mlir/include/mlir/Dialect/NVGPU/IR/NVGPUDialect.h
    M mlir/lib/Conversion/NVGPUToNVVM/NVGPUToNVVM.cpp
    M mlir/lib/Dialect/NVGPU/IR/NVGPUDialect.cpp
    M mlir/test/Conversion/NVGPUToNVVM/nvgpu-to-nvvm.mlir
    M mlir/test/Dialect/NVGPU/invalid.mlir

  Log Message:
  -----------
  [mlir][nvgpu] Add `nvgpu.rcp` OP (#100965)

This PR introduces a new OP for reciprocal calculation for `vector`
types using `nvvm.rcp` OPs. Currently, it supports only f32 types

---------

Co-authored-by: jingzec <jingzec at nvidia.com>


  Commit: 155b7a12820ec45095988b6aa6e057afaf2bc892
      https://github.com/llvm/llvm-project/commit/155b7a12820ec45095988b6aa6e057afaf2bc892
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

  Changed paths:
    M compiler-rt/lib/interception/interception_linux.h

  Log Message:
  -----------
  [Sanitizers] Avoid overload ambiguity for interceptors (#100986)

Since glibc 2.40 some functions like openat make use of overloads when
built with `-D_FORTIFY_SOURCE=2`, see:
https://github.com/bminor/glibc/blob/master/io/bits/fcntl2.h

This means that doing something like `(uintptr_t) openat` or `(void *)
openat` is now ambiguous, breaking the compiler-rt build on new glibc
versions.

Fix this by explicitly casting the symbol to the expected function type
before casting it to an intptr. The expected type is obtained as
`decltype(REAL(func))` so we don't have to repeat the signature from
INTERCEPTOR in the INTERCEPT_FUNTION macro.

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


  Commit: 053bbb6a71abf15dd086a292aa92fccfc54e1f56
      https://github.com/llvm/llvm-project/commit/053bbb6a71abf15dd086a292aa92fccfc54e1f56
  Author: David CARLIER <devnexen at gmail.com>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

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

  Log Message:
  -----------
  [compiler-rt] DumpAllRegisters fix for other unimplemented oses (#101134)


  Commit: 25bea3eb03dc3f9036af37bd51edcf297662d34f
      https://github.com/llvm/llvm-project/commit/25bea3eb03dc3f9036af37bd51edcf297662d34f
  Author: Sergei Barannikov <barannikov88 at gmail.com>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

  Changed paths:
    M llvm/include/llvm/MC/MCELFStreamer.h
    M llvm/lib/MC/MCELFStreamer.cpp
    M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUTargetStreamer.cpp
    M llvm/lib/Target/ARM/MCTargetDesc/ARMELFStreamer.cpp
    M llvm/lib/Target/AVR/MCTargetDesc/AVRELFStreamer.cpp
    M llvm/lib/Target/CSKY/MCTargetDesc/CSKYELFStreamer.cpp
    M llvm/lib/Target/Hexagon/MCTargetDesc/HexagonMCTargetDesc.cpp
    M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchELFStreamer.cpp
    M llvm/lib/Target/Mips/MCTargetDesc/MipsTargetStreamer.cpp
    M llvm/lib/Target/PowerPC/MCTargetDesc/PPCMCTargetDesc.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVELFStreamer.cpp

  Log Message:
  -----------
  [MC] Forward declare ELFObjectWriter (#100989)


  Commit: 78e7ec3be88bac7f3cd9ab32758156d479b0a106
      https://github.com/llvm/llvm-project/commit/78e7ec3be88bac7f3cd9ab32758156d479b0a106
  Author: Edd Dawson <edd.dawson at sony.com>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

  Changed paths:
    M clang/test/Driver/unified-lto.c

  Log Message:
  -----------
  [PS4/PS5][Driver] Allow unified-lto.c test to find .*ld.exe (#101034)

It's common in SIE development environments to have the PlayStation
linkers on the %PATH%. In such cases, the driver will resolve the linker
name to an existing executable, replete with ".exe" extension. Update
recent modifications to clang/test/Driver/unified-lto.c to allow for
this.


  Commit: e8f07cdb57602d71f8960c0499765bcb000745c2
      https://github.com/llvm/llvm-project/commit/e8f07cdb57602d71f8960c0499765bcb000745c2
  Author: Victor Perez <victor.perez at codeplay.com>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/SCF/Transforms/Patterns.h
    M mlir/include/mlir/Dialect/SCF/Transforms/Transforms.h
    M mlir/lib/Dialect/SCF/Transforms/CMakeLists.txt
    A mlir/lib/Dialect/SCF/Transforms/RotateWhileLoop.cpp
    M mlir/test/Dialect/SCF/wrap-while-loop-in-zero-trip-check.mlir
    M mlir/test/lib/Dialect/SCF/TestSCFWrapInZeroTripCheck.cpp

  Log Message:
  -----------
  [MLIR][SCF] Define `-scf-rotate-while` pass (#99850)

Define SCF dialect patterns rotating `scf.while` loops leveraging
existing `mlir::scf::wrapWhileLoopInZeroTripCheck`. `forceCreateCheck`
is always `false` as the pattern would lead to an infinite recursion
otherwise.

This pattern rotates `scf.while` ops, mutating them from "while" loops to
"do-while" loops. A guard checking the condition for the first iteration
is inserted. Note this guard can be optimized away if the compiler can
prove the loop will be executed at least once.

Using this pattern, the following while loop:

```mlir
scf.while (%arg0 = %init) : (i32) -> i64 {
  %val = .., %arg0 : i64
  %cond = arith.cmpi .., %arg0 : i32
  scf.condition(%cond) %val : i64
} do {
^bb0(%arg1: i64):
  %next = .., %arg1 : i32
  scf.yield %next : i32
}
```

Can be transformed into:

``` mlir
%pre_val = .., %init : i64
%pre_cond = arith.cmpi .., %init : i32
scf.if %pre_cond -> i64 {
  %res = scf.while (%arg1 = %va0) : (i64) -> i64 {
    // Original after block
    %next = .., %arg1 : i32
    // Original before block
    %val = .., %next : i64
    %cond = arith.cmpi .., %next : i32
    scf.condition(%cond) %val : i64
  } do {
  ^bb0(%arg2: i64):
    %scf.yield %arg2 : i32
  }
  scf.yield %res : i64
} else {
  scf.yield %pre_val : i64
}
```

The test pass for `wrapWhileLoopInZeroTripCheck` has been modified to
use the new pattern when `forceCreateCheck=false`.

---------

Signed-off-by: Victor Perez <victor.perez at codeplay.com>


  Commit: 16e9bb9cd7f50ae2ec7f29a80bc3b95f528bfdbf
      https://github.com/llvm/llvm-project/commit/16e9bb9cd7f50ae2ec7f29a80bc3b95f528bfdbf
  Author: Rainer Orth <ro at gcc.gnu.org>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

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

  Log Message:
  -----------
  [sanitizer_common] Make sanitizer_linux.cpp kernel_stat* handling Linux-specific

fcd6bd5587cc376cd8f43b60d1c7d61fdfe0f535 broke the Solaris/sparcv9 buildbot:
```
compiler-rt/lib/sanitizer_common/sanitizer_linux.cpp:39:14: fatal error: 'asm/unistd.h' file not found
   39 | #    include <asm/unistd.h>
      |              ^~~~~~~~~~~~~~
```
That section should have been Linux-specific in the first place, which is
what this patch does.

Tested on sparcv9-sun-solaris2.11.


  Commit: 518d8632ce54308f52614b165ee8d84f45d54e54
      https://github.com/llvm/llvm-project/commit/518d8632ce54308f52614b165ee8d84f45d54e54
  Author: Balázs Kéri <balazs.keri at ericsson.com>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

  Changed paths:
    M clang/lib/AST/ASTImporter.cpp
    M clang/unittests/AST/ASTImporterTest.cpp

  Log Message:
  -----------
  [clang][ASTImporter] Fix import of template parameter default values. (#100100)

Default values of template parameters (non-type, type, template) were
not correctly handled in the "inherited" case. This occurs if the first
declaration contains the default value but a next one not. The default
value is "inherited" from the first.

In ASTImporter it was only possible to set the inherited status after
the template object was created with the template parameters that were
imported without handling the inherited case. The import function of the
template parameter contains not enough information (previous
declaration) to set the inherited-from status. After the template was
created, default value of the parameters that should be inherited is
reset to inherited mode.


  Commit: 533a22941e9acee1460fbd054fbfa57b82d660e5
      https://github.com/llvm/llvm-project/commit/533a22941e9acee1460fbd054fbfa57b82d660e5
  Author: Dmitri Gribenko <gribozavr at gmail.com>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

  Changed paths:
    M clang/test/CodeGenCoroutines/coro-elide-thinlto.cpp

  Log Message:
  -----------
  [clang][test] Write temporary files to %t

The issue was introduced in
https://github.com/llvm/llvm-project/commit/3a9ef4e69a3fec3203bd3e1caa53edf4b76843cf.


  Commit: 55357d8b92e32999aca83daab017df35e87e9ed2
      https://github.com/llvm/llvm-project/commit/55357d8b92e32999aca83daab017df35e87e9ed2
  Author: Freddy Ye <freddy.ye at intel.com>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

  Changed paths:
    M llvm/lib/Target/X86/AsmParser/X86AsmParser.cpp
    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

  Log Message:
  -----------
  [X86][MC] Add alias for `{evex} cmp` and `{evex} test`. (#99277)

Related gas patch:
https://sourceware.org/pipermail/binutils/2024-June/134478.html


  Commit: c6b192ac2e1441b3484781488adef2986408ebdf
      https://github.com/llvm/llvm-project/commit/c6b192ac2e1441b3484781488adef2986408ebdf
  Author: nicole mazzuca <nicole at strega-nil.co>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

  Changed paths:
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.find.last/ranges.find_last.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.find.last/ranges.find_last_if.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.find.last/ranges.find_last_if_not.pass.cpp
    M libcxx/test/support/test_iterators.h

  Log Message:
  -----------
  [libc++][test] Do not assume array::iterator is a pointer (#100603)

In the tests I added for `ranges::find_last{_if{_not}}`, I accidentally
introduced an assumption that `same_as<array<T, 0>::iterator, T*>`; this
is a faulty assumption on MSVC-STL.

Fixes #100498.


  Commit: 7645a7690de1c050d933a2dbe1e9156057006333
      https://github.com/llvm/llvm-project/commit/7645a7690de1c050d933a2dbe1e9156057006333
  Author: martinboehme <mboehme at google.com>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

  Changed paths:
    M clang/include/clang/Analysis/FlowSensitive/DataflowAnalysis.h

  Log Message:
  -----------
  [clang][dataflow] Remove legacy version of `runDataflowAnalysis()`. (#101146)


  Commit: 96b1ae8927a411ef691a8843dc5add156581b1c0
      https://github.com/llvm/llvm-project/commit/96b1ae8927a411ef691a8843dc5add156581b1c0
  Author: Alex Bradbury <asb at igalia.com>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

  Changed paths:
    M compiler-rt/lib/builtins/cpu_model/riscv.c

  Log Message:
  -----------
  [compiler-rt][RISCV][NFC] Add link to kernel documenation on hwprobe interface

Makes it a little easier for future reviewers/maintainers.


  Commit: b1542afd0b3d393aea3a0ccab41b850f59e4033c
      https://github.com/llvm/llvm-project/commit/b1542afd0b3d393aea3a0ccab41b850f59e4033c
  Author: Luke Lau <luke at igalia.com>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVAsmPrinter.cpp
    M llvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/lib/Target/RISCV/RISCVISelLowering.h
    M llvm/lib/Target/RISCV/RISCVInsertVSETVLI.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfoV.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoVPseudos.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoVVLPatterns.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoZvk.td
    M llvm/lib/Target/RISCV/RISCVSchedSiFive7.td
    M llvm/lib/Target/RISCV/RISCVSchedSiFiveP600.td
    M llvm/lib/Target/RISCV/RISCVScheduleV.td
    M llvm/lib/Target/RISCV/RISCVVectorPeephole.cpp
    M llvm/test/CodeGen/RISCV/rvv/vleff-vlseg2ff-output.ll

  Log Message:
  -----------
  [RISCV] Rename merge operand -> passthru. NFC (#100330)

We sometimes call the first tied dest operand in vector pseudos the
merge operand, and other times the passthru.

Passthru seems to be more common, and it's what the C intrinsics call
it[^1], so this renames all usages of merge to passthru to be
consistent. It also helps prevent confusion with vmerge.vvm in some of
the peephole optimisations.

[^1]:
https://github.com/riscv-non-isa/rvv-intrinsic-doc/blob/main/doc/rvv-intrinsic-spec.adoc#the-passthrough-vd-argument-in-the-intrinsics


  Commit: ca8a4111f796fe8533e0af95557875b15becff06
      https://github.com/llvm/llvm-project/commit/ca8a4111f796fe8533e0af95557875b15becff06
  Author: Chuanqi Xu <yedeng.yd at linux.alibaba.com>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

  Changed paths:
    M clang/lib/CodeGen/CodeGenModule.cpp
    A clang/test/Modules/inline-builtins.cppm

  Log Message:
  -----------
  [C++20] [Modules] Always emit the inline builtins

See the attached test for the motivation example. If we're too greedy to
not emit the definition for inline builtins, we may meet a middle end
crash. And it should be good to emit inline builtins always.


  Commit: 2b2f4ae0fbe366ebaa8811bed567a6ff76bbe3b1
      https://github.com/llvm/llvm-project/commit/2b2f4ae0fbe366ebaa8811bed567a6ff76bbe3b1
  Author: Eleanor Bonnici <eleanor.bonnici at arm.com>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

  Changed paths:
    M llvm/docs/CommandGuide/llvm-objcopy.rst
    M llvm/include/llvm/ObjCopy/CommonConfig.h
    M llvm/lib/ObjCopy/ConfigManager.cpp
    M llvm/lib/ObjCopy/ELF/ELFObjcopy.cpp
    A llvm/test/tools/llvm-objcopy/ELF/change-section-address.test
    M llvm/tools/llvm-objcopy/ObjcopyOptions.cpp
    M llvm/tools/llvm-objcopy/ObjcopyOpts.td

  Log Message:
  -----------
  [llvm-objcopy] Add --change-section-address (#98664)

--change-section address and its alias --adjust-section-vma allows
modification
of section addresses in a relocatable file. This used to be used, for
example,
in Fiasco microkernel.

On a relocatable file this option behaves the same as GNU objcopy, apart
from
the fact that it does not issue any warnings, for example, when an
argument is
not used.
GNU objcopy does not produce an error when passed an executable file but
the
usecase for this is not clear, and the behaviour is inconsistent. The
idea of
GNU objcopy --change-section-address is that the option should change
both LMA
and VMA in an executable file. Since this patch does not implement
executable
file support, only VMA is changed.


  Commit: 933b80006af5801f7fe9327d160c04b12bb8d8b8
      https://github.com/llvm/llvm-project/commit/933b80006af5801f7fe9327d160c04b12bb8d8b8
  Author: Alexis Engelke <engelke at in.tum.de>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

  Changed paths:
    M llvm/include/llvm/Support/GenericDomTree.h
    M llvm/include/llvm/Support/GenericDomTreeConstruction.h
    M llvm/test/Transforms/SCCP/ipsccp-preserve-pdt.ll

  Log Message:
  -----------
  [Support][NFC] Use DomTreeBase methods in SemiNCA (#101059)

Previously, there were two implementations with identical behavior to
erase a node from a dominator tree, one in the DomTreeBase and one in
SemiNCAInfo. Remove the latter, as it is completely redundant.

Also, use getNode() instead of a direct access into DomTreeNodes. This
will simplify replacing the data structure of DomTreeNodes later on.

While at it, also use swap+pop_back instead of erase when removing a
node from the children vector to avoid O(n) copy. This slightly changes
the order of the tree nodes after removal, but should have no impact.


  Commit: f6a928a532543a5db4ab89fccbede42f8df32f0f
      https://github.com/llvm/llvm-project/commit/f6a928a532543a5db4ab89fccbede42f8df32f0f
  Author: Alexis Engelke <engelke at in.tum.de>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

  Changed paths:
    M llvm/include/llvm/Support/GenericDomTree.h
    M llvm/include/llvm/Support/GenericDomTreeConstruction.h

  Log Message:
  -----------
  [Support][NFC] Simplify DomTreeNodeBase::addChild (#101056)

Previously, the method would take the unique_ptr, store the pointer in
its Children vector, and then return the unique_ptr. Pass the raw
pointer as parameter instead. Also merge createChild and createNode to
avoid code duplication.

This was added in a72d6ef891707173b when introducing unique_ptr,
previously this was a source code size optimization.


  Commit: 95e9afff30920a43c98fea9a3ece1a2129207946
      https://github.com/llvm/llvm-project/commit/95e9afff30920a43c98fea9a3ece1a2129207946
  Author: Shengchen Kan <shengchen.kan at intel.com>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

  Changed paths:
    M llvm/lib/TargetParser/Host.cpp

  Log Message:
  -----------
  [X86] Update sub-features of APX for host CPU

This is a follow-up for https://github.com/llvm/llvm-project/pull/80636


  Commit: d90fa612604b49dfc81c3f42c106fab7401322ec
      https://github.com/llvm/llvm-project/commit/d90fa612604b49dfc81c3f42c106fab7401322ec
  Author: Xing Xue <xingxue at outlook.com>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

  Changed paths:
    M libunwind/src/UnwindCursor.hpp
    M libunwind/test/aix_signal_unwind.pass.sh.S

  Log Message:
  -----------
  [libunwind][AIX] Fix the wrong traceback from signal handler (#101069)

Patch [llvm#92291](https://github.com/llvm/llvm-project/pull/92291)
causes wrong traceback from a signal handler for AIX because the AIX
unwinder uses the traceback table at the end of each function instead of
FDE/CIE for unwinding. This patch adds a condition to exclude traceback
table based unwinding from the code added by the patch.


  Commit: 803db1f5254047b08b6887c52009d4e72e67a673
      https://github.com/llvm/llvm-project/commit/803db1f5254047b08b6887c52009d4e72e67a673
  Author: Timm Bäder <tbaeder at redhat.com>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

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

  Log Message:
  -----------
  [clang][Interp][NFC] Add missing fallthrough when parsing While loops


  Commit: a27a01212ab68d6d5aee882906674def21c5ab0b
      https://github.com/llvm/llvm-project/commit/a27a01212ab68d6d5aee882906674def21c5ab0b
  Author: Simon Camphausen <simon.camphausen at iml.fraunhofer.de>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

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

  Log Message:
  -----------
  [MLIR][EmitC] Fix typo in op description (#101153)


  Commit: 36c57532f528e2d6420c0d205841af8b76c70d6a
      https://github.com/llvm/llvm-project/commit/36c57532f528e2d6420c0d205841af8b76c70d6a
  Author: Adrian Kuegel <akuegel at google.com>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

  Changed paths:
    M mlir/lib/CAPI/Dialect/SparseTensor.cpp

  Log Message:
  -----------
  [mlir] Apply ClangTidy performance finding.


  Commit: 53925e33c5943bee7cf2fe29ca1274a42a5d5687
      https://github.com/llvm/llvm-project/commit/53925e33c5943bee7cf2fe29ca1274a42a5d5687
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

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

  Log Message:
  -----------
  [clang][Interp] Fix primitive MoveFn (#101165)

Declaring the SrcPtr as const will cause us later to call the copy ctor
instead of the move ctor.


  Commit: c39daa6e19800d9a1b20ec6e04b2a68149dcf89c
      https://github.com/llvm/llvm-project/commit/c39daa6e19800d9a1b20ec6e04b2a68149dcf89c
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

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

  Log Message:
  -----------
  [clang][Interp] Pick right dynamic type when doing virtual calls (#101166)


  Commit: 51681409aeb081c8dfe241e0d8e8c71f8bf0a4f4
      https://github.com/llvm/llvm-project/commit/51681409aeb081c8dfe241e0d8e8c71f8bf0a4f4
  Author: Adrian Kuegel <akuegel at google.com>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

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

  Log Message:
  -----------
  [mlir][Bazel] Adapt to 2b23e6c8d6a28ce1c134d1b6b322e35eec9d98e4


  Commit: 5d833ee6acc85bf108a8787ba233e955728868ab
      https://github.com/llvm/llvm-project/commit/5d833ee6acc85bf108a8787ba233e955728868ab
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

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

  Log Message:
  -----------
  [SCEV] Avoid unnecessary computeConstantDifference() call (NFC)

No need to do the second one if the first one already failed.


  Commit: 41c0f89f5532ec110b927c3a67ceac83448c5d98
      https://github.com/llvm/llvm-project/commit/41c0f89f5532ec110b927c3a67ceac83448c5d98
  Author: Jacek Caban <jacek at codeweavers.com>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

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

  Log Message:
  -----------
  [CodeGen][ARM64EC] Use alias symbol for exporting hybrid_patchable functions. (#100872)

Exporting $hp_target symbol doesn't make sense, use the unmangled alias instead.
This is not compatible with MSVC, but it makes using dllexport together with
hybrid_patchable attribute possible.


  Commit: 65697b1c7cc9824d51f22f109c6a32428a7dd557
      https://github.com/llvm/llvm-project/commit/65697b1c7cc9824d51f22f109c6a32428a7dd557
  Author: Johannes Reifferscheid <jreiffers at google.com>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

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

  Log Message:
  -----------
  Remove value cache in SCEV comparator. (#100721)

The cache triggers almost never, and seems unlikely to help with
performance. However, when it does, it is likely to cause the comparator
to become inconsistent due to a bad interaction of the depth limit and
cache hits. This leads to crashes in debug builds. See the new unit test
for a reproducer.


  Commit: 8d28d448e35add632345ff6d1c45449155652756
      https://github.com/llvm/llvm-project/commit/8d28d448e35add632345ff6d1c45449155652756
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

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

  Log Message:
  -----------
  [SCEV] Fix outdated comment (NFC)

The EqCache parameter has been removed.


  Commit: 14dfdc00d96b9c51eae4c802397ac5b15f097401
      https://github.com/llvm/llvm-project/commit/14dfdc00d96b9c51eae4c802397ac5b15f097401
  Author: Shilei Tian <i at tianshilei.me>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

  Changed paths:
    M llvm/lib/IR/OptBisect.cpp

  Log Message:
  -----------
  [OptBisect] Add an option to disable print of pass message (#101065)

The print could take a huge amount of time if there are millions of
optimization
passes running. This patch simply adds an option to disable the print.


  Commit: 26ca7820ebe06369227efaa282fb2ac96c5aa74a
      https://github.com/llvm/llvm-project/commit/26ca7820ebe06369227efaa282fb2ac96c5aa74a
  Author: Brandon Wu <brandon.wu at sifive.com>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

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

  Log Message:
  -----------
  [NFC][clang] Fix typo of `riscv_rvv_vector_bits` in AttrDocs (#101046)


  Commit: 243b27f7e1fbd6131d00cdcd4c06d6ce6e57a0e5
      https://github.com/llvm/llvm-project/commit/243b27f7e1fbd6131d00cdcd4c06d6ce6e57a0e5
  Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

  Changed paths:
    M clang/include/clang/AST/ASTNodeTraverser.h
    M clang/include/clang/AST/DeclOpenMP.h
    M clang/include/clang/AST/OpenMPClause.h
    M clang/include/clang/AST/RecursiveASTVisitor.h
    M clang/lib/AST/StmtProfile.cpp
    M clang/lib/CodeGen/CGDecl.cpp
    M clang/lib/CodeGen/CGOpenMPRuntime.cpp
    M clang/lib/CodeGen/CGStmtOpenMP.cpp
    M clang/lib/CodeGen/CodeGenModule.cpp
    M clang/lib/Sema/SemaOpenMP.cpp
    M clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
    M clang/lib/Sema/TreeTransform.h
    M clang/lib/Serialization/ASTWriter.cpp
    M clang/tools/libclang/CIndex.cpp

  Log Message:
  -----------
  [clang][OpenMP] Rename `varlists` to `varlist`, NFC (#101058)

It returns a range of variables (via Expr*), not a range of lists.


  Commit: 6cb95f73e1974e5e36a6d2b0d1457c401819ffde
      https://github.com/llvm/llvm-project/commit/6cb95f73e1974e5e36a6d2b0d1457c401819ffde
  Author: martinboehme <mboehme at google.com>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

  Changed paths:
    M clang/include/clang/Analysis/FlowSensitive/AdornedCFG.h

  Log Message:
  -----------
  [clang][dataflow] Remove deprecated method `AdornedCFG::getStmtToBlock()`. (#101174)


  Commit: 7937eaa0db5752296a54fad22b4e80cf3f93be41
      https://github.com/llvm/llvm-project/commit/7937eaa0db5752296a54fad22b4e80cf3f93be41
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

  Changed paths:
    M llvm/test/Transforms/IRCE/wide_indvar.ll

  Log Message:
  -----------
  [IRCE] Regenerate test checks (NFC)


  Commit: d2b6a8ee67efc16d6594dfa9fdcf4a27251c7dac
      https://github.com/llvm/llvm-project/commit/d2b6a8ee67efc16d6594dfa9fdcf4a27251c7dac
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUInstPrinter.cpp
    M llvm/test/CodeGen/AMDGPU/inline-asm.ll

  Log Message:
  -----------
  AMDGPU: Fix asserting when trying to print scc (#101175)

This is printable using inline assembly. Also we should
handle using scc directly as instruction operands.


  Commit: d92a484e6f5c9063d82ca79405bb3557d88ad575
      https://github.com/llvm/llvm-project/commit/d92a484e6f5c9063d82ca79405bb3557d88ad575
  Author: Alex Bradbury <asb at igalia.com>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

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

  Log Message:
  -----------
  [compiler-rt][AArch64][NFCI] Use CONSTRUCTOR_ATTRIBUTE in sme-abi-vg.c (#101159)

sme-abi-vg.c includes cpu_model/aarch64.h which includes cpu_model.h
which has an equivalent define for `CONSTRUCTOR_ATTRIBUTE` that has the
same checks for the GCC version that we repeat here. Just use that,
rather than repeating the same logic.


  Commit: b4444dca47c41436aa781bfd38aac6eca856ef23
      https://github.com/llvm/llvm-project/commit/b4444dca47c41436aa781bfd38aac6eca856ef23
  Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/Vector/IR/VectorOps.td
    M mlir/lib/Conversion/VectorToLLVM/ConvertVectorToLLVM.cpp
    M mlir/lib/Conversion/VectorToSPIRV/VectorToSPIRV.cpp
    M mlir/lib/Dialect/Vector/IR/VectorOps.cpp
    M mlir/lib/Dialect/Vector/Transforms/VectorInsertExtractStridedSliceRewritePatterns.cpp
    M mlir/lib/Dialect/Vector/Transforms/VectorLinearize.cpp

  Log Message:
  -----------
  [mlir][vector] Use `DenseI64ArrayAttr` for shuffle masks (#101163)

Follow on from #100997. This again removes from boilerplate conversions
to/from IntegerAttr and int64_t (otherwise, this is a NFC).


  Commit: b356aa3e2da7d1792412783e2c6247538ead75e8
      https://github.com/llvm/llvm-project/commit/b356aa3e2da7d1792412783e2c6247538ead75e8
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUGISel.td
    M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.h
    M llvm/lib/Target/AMDGPU/SIInstrInfo.td
    M llvm/lib/Target/AMDGPU/SIInstructions.td
    M llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw_fmax.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw_fmin.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/divergence-divergent-i1-phis-no-lane-mask-merging.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/divergent-control-flow.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/floor.f64.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/global-atomic-fadd.f64.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-constant.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-fconstant.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-load-constant.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-load-global-saddr.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-load-smrd.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-ptrmask.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.intersect_ray.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.mfma.gfx90a.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.rsq.clamp.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.set.inactive.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.memset.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/mubuf-global.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/sdiv.i64.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/srem.i64.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/udiv.i64.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/urem.i64.ll
    M llvm/test/CodeGen/AMDGPU/bf16.ll
    M llvm/test/CodeGen/AMDGPU/frame-index-elimination.ll
    M llvm/test/CodeGen/AMDGPU/insert_vector_dynelt.ll
    M llvm/test/CodeGen/AMDGPU/lds-frame-extern.ll
    M llvm/test/CodeGen/AMDGPU/lower-lds-struct-aa-memcpy.ll
    M llvm/test/CodeGen/AMDGPU/mmra.ll
    M llvm/test/CodeGen/AMDGPU/offset-split-flat.ll
    M llvm/test/CodeGen/AMDGPU/offset-split-global.ll
    M llvm/test/CodeGen/AMDGPU/roundeven.ll
    M llvm/test/CodeGen/AMDGPU/scalar_to_vector_v2x16.ll
    M llvm/test/CodeGen/AMDGPU/vgpr-spill-placement-issue61083.ll

  Log Message:
  -----------
  AMDGPU/GlobalISel: Partially move constant selection to patterns (#100786)

This is still relying on the manual code for splitting 64-bit
constants, and handling pointers.

We were missing some of the tablegen patterns for all immediate types,
so this has some side effect DAG path improvements. This also reduces
the diff in the 2 selector outputs.


  Commit: 2033767d68ed9aabcf1ad5d2bdd7541b272a05fd
      https://github.com/llvm/llvm-project/commit/2033767d68ed9aabcf1ad5d2bdd7541b272a05fd
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIInstructions.td

  Log Message:
  -----------
  AMDGPU: Cleanup immediate selection patterns (#100787)

Reorder for consistency, so the same types for v/s are together.


  Commit: dcb4399f07180bcad4632f152225309ea70f0700
      https://github.com/llvm/llvm-project/commit/dcb4399f07180bcad4632f152225309ea70f0700
  Author: Jannick Kremer <51118500+DeinAlptraum at users.noreply.github.com>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

  Changed paths:
    M clang/bindings/python/clang/cindex.py
    M clang/bindings/python/tests/cindex/test_code_completion.py
    M clang/bindings/python/tests/cindex/test_comment.py
    M clang/docs/ReleaseNotes.rst

  Log Message:
  -----------
  [libclang/python] Fix some type errors, add type annotations (#98745)

This fixes a few of the more debatable type errors, and adds related
annotations, as the next step towards #76664. This fixes 71 out of the
remaining 418 strict typing errors.


  Commit: 6b08e4d3ac52c4cccba650d6a8afce61dcb6fb2f
      https://github.com/llvm/llvm-project/commit/6b08e4d3ac52c4cccba650d6a8afce61dcb6fb2f
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

  Changed paths:
    M llvm/docs/SourceLevelDebugging.rst

  Log Message:
  -----------
  [docs] SourceLevelDebugging: fix metadata references (#101187)

The metadata was off-by-one in a couple of places, making the
explanatory text incorrect.


  Commit: 1d0723d4fb333f50d7eddac964ac09e9b05efb57
      https://github.com/llvm/llvm-project/commit/1d0723d4fb333f50d7eddac964ac09e9b05efb57
  Author: Manupa Karunaratne <manupa.karunaratne at amd.com>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/AMDGPU/IR/AMDGPU.td
    M mlir/lib/Conversion/AMDGPUToROCDL/AMDGPUToROCDL.cpp
    M mlir/test/Conversion/AMDGPUToROCDL/amdgpu-to-rocdl.mlir
    M mlir/test/Dialect/AMDGPU/ops.mlir

  Log Message:
  -----------
  [MLIR][AMDGPU] Add amdgpu.sched_barrier (#98911)

This commit adds sched_barrier operator
to AMDGPU dialect that lowers to rocdl.sched.barrier.


  Commit: 42d641ef5cc4bd82f98ef9959a593ca6db66d75d
      https://github.com/llvm/llvm-project/commit/42d641ef5cc4bd82f98ef9959a593ca6db66d75d
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.h
    M llvm/lib/Target/AMDGPU/SIInstructions.td
    M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-constant.mir

  Log Message:
  -----------
  AMDGPU/GlobalISel: Select all constants in tablegen (#100788)

This regresses the arbitrary address space pointer case. Ideally
we could write a pattern that matches a pointer based only on
its size, but using iPTR/iPTRAny seem to not work for this.


  Commit: 8fc329421b2e3bc5cdda98ce303ea3b07af58ebc
      https://github.com/llvm/llvm-project/commit/8fc329421b2e3bc5cdda98ce303ea3b07af58ebc
  Author: Matthias Springer <me at m-sp.org>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

  Changed paths:
    M mlir/lib/Transforms/Utils/DialectConversion.cpp
    M mlir/test/Transforms/test-legalize-type-conversion.mlir
    M mlir/test/lib/Dialect/Test/TestOps.td
    M mlir/test/lib/Dialect/Test/TestPatterns.cpp

  Log Message:
  -----------
  [mlir][Transforms] Dialect conversion: Add missing "else if" branch (#101148)

This code got lost in #97213 and there was no test for it. Add it back
with an MLIR test.

When a pattern is run without a type converter, we can assume that the
new block argument types of a signature conversion are legal. That's
because they were specified by the user. This won't work for 1->N
conversions due to limitations in the dialect conversion infrastructure,
so the original `FIXME` has to stay in place.


  Commit: bf42a7860a208439a0a29f5dcc7a33949c484efb
      https://github.com/llvm/llvm-project/commit/bf42a7860a208439a0a29f5dcc7a33949c484efb
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

  Changed paths:
    M libc/config/gpu/entrypoints.txt
    M libc/src/stdlib/CMakeLists.txt
    M libc/src/stdlib/gpu/CMakeLists.txt
    A libc/src/stdlib/gpu/aligned_alloc.cpp
    A libc/src/stdlib/gpu/calloc.cpp
    A libc/src/stdlib/gpu/realloc.cpp

  Log Message:
  -----------
  [libc] Implement placeholder memory functions on the GPU (#101082)

Summary:
These functions are needed for `libc++` to link successfully. We can't
implement them well currently, so simply provide some stand-in
implementations. `realloc` will currently copy garbage and potentially
fault and `aligned_alloc` will work unless your alignment is more than
4K alignment. However, these should work in practice to get tests
running. I will write a real allocator soon™.


  Commit: 8f7910a4fc08818462e0e836db74b20290cd36c7
      https://github.com/llvm/llvm-project/commit/8f7910a4fc08818462e0e836db74b20290cd36c7
  Author: jameshu15869 <55058507+jameshu15869 at users.noreply.github.com>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

  Changed paths:
    M libc/benchmarks/gpu/src/math/CMakeLists.txt
    M libc/benchmarks/gpu/src/math/sin_benchmark.cpp

  Log Message:
  -----------
  [libc] Add AMDGPU Sin Benchmark (#101120)

This PR adds support for benchmarking `__ocml_sin_f64()` against
`sin()`. This PR is currently a draft because I do not have access to an
AMD GPU and was not able to test the PR, but the code compiled when I
ran `ninja gpu-benchmark` from `runtimes-amdgcn-amd-amdhsa-bins`

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


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

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp
    M llvm/test/CodeGen/RISCV/rvv/rvv-peephole-vmerge-vops.ll
    M llvm/test/CodeGen/RISCV/rvv/vmv.v.v-peephole.ll

  Log Message:
  -----------
  [RISCV] Fix vmerge.vvm/vmv.v.v getting folded into ops with mismatching EEW (#101152)

As noted in
https://github.com/llvm/llvm-project/pull/100367/files#r1695448771, we
currently fold in vmerge.vvms and vmv.v.vs into their ops even if the
EEW is different which leads to an incorrect transform.

This checks the op's EEW via its simple value type for now since there
doesn't seem to be any existing information about the EEW size of
instructions. We'll probably need to encode this at some point if we
want to be able to access it at the MachineInstr level in #100367


  Commit: 971a1ac4451017e625f81a4a8c15092c06dd2eb3
      https://github.com/llvm/llvm-project/commit/971a1ac4451017e625f81a4a8c15092c06dd2eb3
  Author: OverMighty <its.overmighty at gmail.com>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

  Changed paths:
    M libc/config/linux/aarch64/entrypoints.txt
    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/expf16.h
    M libc/src/math/generic/CMakeLists.txt
    A libc/src/math/generic/expf16.cpp
    M libc/test/UnitTest/FPMatcher.h
    M libc/test/src/math/CMakeLists.txt
    A libc/test/src/math/expf16_test.cpp
    M libc/test/src/math/performance_testing/CMakeLists.txt
    A libc/test/src/math/performance_testing/expf16_perf.cpp
    M libc/test/src/math/smoke/CMakeLists.txt
    A libc/test/src/math/smoke/expf16_test.cpp

  Log Message:
  -----------
  [libc][math][c23] Add expf16 C23 math function (#100632)

Part of #95250.


  Commit: 33c27f28d1cd05fd0a739498105927c1fba04666
      https://github.com/llvm/llvm-project/commit/33c27f28d1cd05fd0a739498105927c1fba04666
  Author: Peter Klausler <35819229+klausler at users.noreply.github.com>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

  Changed paths:
    M flang/include/flang/Common/Fortran-features.h
    M flang/include/flang/Semantics/semantics.h
    M flang/include/flang/Semantics/tools.h
    M flang/lib/Semantics/check-allocate.cpp
    M flang/lib/Semantics/check-call.cpp
    M flang/lib/Semantics/check-purity.cpp
    M flang/lib/Semantics/definable.cpp
    M flang/lib/Semantics/definable.h
    M flang/lib/Semantics/pointer-assignment.cpp
    M flang/lib/Semantics/semantics.cpp
    M flang/lib/Semantics/tools.cpp
    M flang/test/Evaluate/folding08.f90
    M flang/test/Semantics/call02.f90
    M flang/test/Semantics/call05.f90
    M flang/test/Semantics/contiguous01.f90
    M flang/test/Semantics/resolve53.f90
    A flang/test/Semantics/undef-result01.f90

  Log Message:
  -----------
  [flang] Warn about undefined function results (#99533)

When the result of a function never appears in a variable definition
context, emit a warning.

If the function has multiple result variables due to alternate ENTRY
statements, any definition will suffice.

The implementation of this check is tied to the general variable
definability checking utility in semantics. Every variable definition
context uses it to ensure that no undefinable variable is being defined.
A set of defined variables is maintained in the SemanticsContext and,
when the warning is enabled and no fatal error has been reported, the
scope tree is traversed and all the function subprograms' results are
tested for membership in that set.


  Commit: 539a6b500c9c7a808e68db32bf7965985202197f
      https://github.com/llvm/llvm-project/commit/539a6b500c9c7a808e68db32bf7965985202197f
  Author: Peter Klausler <35819229+klausler at users.noreply.github.com>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

  Changed paths:
    M flang/include/flang/Semantics/symbol.h
    M flang/include/flang/Semantics/tools.h
    M flang/lib/Semantics/check-declarations.cpp
    M flang/lib/Semantics/mod-file.cpp
    M flang/lib/Semantics/resolve-names.cpp
    M flang/lib/Semantics/runtime-type-info.cpp
    M flang/lib/Semantics/symbol.cpp
    M flang/lib/Semantics/tools.cpp
    M flang/lib/Semantics/type.cpp
    M flang/test/Semantics/resolve33.f90

  Log Message:
  -----------
  [flang] Detect use-before-decl errors on type parameters (#99947)

Ensure that type parameters are declared as such before being referenced
within the derived type definition. (Previously, such references would
resolve to symbols in the enclosing scope.)

This change causes the symbols for the type parameters to be created
when the TYPE statement is processed in name resolution. They are
TypeParamDetails symbols with no KIND/LEN attribute set, and they shadow
any symbols of the same name in the enclosing scope.

When the type parameter declarations are processed, the KIND/LEN
attributes are set. Any earlier reference to a type parameter with no
KIND/LEN attribute elicits an error.

Some members of TypeParamDetails have been retyped &/or renamed.


  Commit: 1ada2352677cd271869660c99f1f18b2f556ac31
      https://github.com/llvm/llvm-project/commit/1ada2352677cd271869660c99f1f18b2f556ac31
  Author: Peter Klausler <35819229+klausler at users.noreply.github.com>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

  Changed paths:
    M flang/lib/Parser/prescan.cpp
    A flang/test/Preprocessing/line-in-contin.F90

  Log Message:
  -----------
  [flang][preprocessor] Fix handling of #line before free-form continua… (#100178)

…tion

See new test. A #line (or #) directive after a line ending with & and
before its continuation shouldn't elicit an error about mismatched
parentheses.

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


  Commit: 1e5334bcdae462e47d8516464b2cca1674ea899d
      https://github.com/llvm/llvm-project/commit/1e5334bcdae462e47d8516464b2cca1674ea899d
  Author: Karthika Devi C <quic_kartc at quicinc.com>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

  Changed paths:
    M polly/include/polly/ScopBuilder.h
    M polly/include/polly/ScopInfo.h
    M polly/lib/Analysis/ScopBuilder.cpp
    M polly/lib/Analysis/ScopInfo.cpp
    A polly/test/DependenceInfo/reduction_indirect_access.ll
    A polly/test/ScopInfo/reduction_double.ll
    A polly/test/ScopInfo/reduction_escaping_intermediate_3.ll
    A polly/test/ScopInfo/reduction_if.ll
    A polly/test/ScopInfo/reduction_indirect_access.ll
    A polly/test/ScopInfo/reduction_indirect_access_2.ll
    A polly/test/ScopInfo/reduction_long_reduction_chain.ll
    A polly/test/ScopInfo/reduction_long_reduction_chain_double_use.ll
    A polly/test/ScopInfo/reduction_multiple_different_operators.ll

  Log Message:
  -----------
  [Polly] Data flow reduction detection to cover more cases (#84901)

The base concept is same as existing reduction algorithm where we get
the list of candidate pairs <store,load>. But the existing algorithm
works only if there is single binary operation between the load and
store.
Example sum += a[i];

This algorithm extends to work with more than single binary operation as
well. It is implemented using data flow reduction detection on basic
block level. We propagate the loads, the number of times the load is
used(flows into instruction) and binary operation performed until we
reach a store.

Example sum += a[i] + b[i];
```
sum(Ld)     a[i](Ld)
      \  +  /
        tmp    b[i](Ld)
           \ + /
            sum(St)
```

In the above case the candidate pairs are formed by associating sum with
all of its load inputs which are sum, a[i] and b[i]. Then check
functions are used to filter a valid reduction pair ie {sum,sum}.

---------

Co-authored-by: Michael Kruse <github at meinersbur.de>


  Commit: fffbabfd4780261942711e3a3676447eba91e877
      https://github.com/llvm/llvm-project/commit/fffbabfd4780261942711e3a3676447eba91e877
  Author: Peter Klausler <35819229+klausler at users.noreply.github.com>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

  Changed paths:
    M flang/lib/Parser/executable-parsers.cpp
    M flang/lib/Parser/program-parsers.cpp
    A flang/test/Parser/recovery03.f90

  Log Message:
  -----------
  [flang][parser] Better error recovery for misplaced declaration (#100482)

When a declaration construct appears in the execution part of a block or
subprogram body, report it as such rather than as a misleading syntax
error on the executable statement that it somehow matched the most.


  Commit: ed5a78a13fb6c82e4bc8bde13df2fc5e085e6ebb
      https://github.com/llvm/llvm-project/commit/ed5a78a13fb6c82e4bc8bde13df2fc5e085e6ebb
  Author: Peter Klausler <35819229+klausler at users.noreply.github.com>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

  Changed paths:
    M flang/lib/Semantics/resolve-names.cpp
    A flang/test/Semantics/associate04.f90

  Log Message:
  -----------
  [flang] Catch ASSOCIATE(x=>assumed_rank) (#100626)

An assumed-rank dummy argument cannot be the variable or expression in
the selector of an ASSOCIATE construct. (SELECT TYPE/RANK are fine.)


  Commit: 6f7e715eae945088f9e81fc39c86166a8d974242
      https://github.com/llvm/llvm-project/commit/6f7e715eae945088f9e81fc39c86166a8d974242
  Author: Peter Klausler <35819229+klausler at users.noreply.github.com>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

  Changed paths:
    M flang/lib/Evaluate/fold-character.cpp
    M flang/lib/Evaluate/fold-implementation.h
    M flang/lib/Evaluate/fold-integer.cpp
    M flang/lib/Evaluate/fold-real.cpp
    A flang/test/Evaluate/rewrite08.f90

  Log Message:
  -----------
  [flang] Don't inject possibly invalid conversions while folding (#100842)

A couple of intrinsic functions have optional arguments. Don't insert
type conversions on those arguments when the actual arguments may not be
present at execution time, due to being OPTIONAL, allocatables, or
pointers.


  Commit: ff567a4e0457363f1e2e266b09211b709a21899c
      https://github.com/llvm/llvm-project/commit/ff567a4e0457363f1e2e266b09211b709a21899c
  Author: Peter Klausler <35819229+klausler at users.noreply.github.com>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

  Changed paths:
    M flang/lib/Evaluate/fold-integer.cpp
    M flang/lib/Evaluate/variable.cpp
    A flang/test/Evaluate/fold-assumed-type-rank.f90

  Log Message:
  -----------
  [flang] Fix folding of RANK(assumed-type assumed-rank) (#101027)

The code that deals with the special case of RANK(assumed-rank) in
intrinsic function folding wasn't handling the even more special case of
assumed-type assumed-rank dummy arguments.


  Commit: c3f7f2886bcfa31b888d0d517ade382893bc5e0b
      https://github.com/llvm/llvm-project/commit/c3f7f2886bcfa31b888d0d517ade382893bc5e0b
  Author: OverMighty <its.overmighty at gmail.com>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

  Changed paths:
    M libc/config/linux/aarch64/entrypoints.txt

  Log Message:
  -----------
  [libc][math][c23] Temporarily disable expf16 on AArch64 (#101203)

See Buildbot failure:
https://lab.llvm.org/buildbot/#/builders/104/builds/3378.


  Commit: 0813260aa88827681da80bedd7f8737ad35c6895
      https://github.com/llvm/llvm-project/commit/0813260aa88827681da80bedd7f8737ad35c6895
  Author: Job Henandez Lara <hj93 at protonmail.com>
  Date:   2024-07-30 (Tue, 30 Jul 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/docs/math/index.rst
    M libc/spec/stdc.td
    M libc/src/math/CMakeLists.txt
    M libc/src/math/generic/CMakeLists.txt
    A libc/src/math/generic/totalorder.cpp
    A libc/src/math/generic/totalorderf.cpp
    A libc/src/math/generic/totalorderf128.cpp
    A libc/src/math/totalorder.h
    A libc/src/math/totalorderf.h
    A libc/src/math/totalorderf128.h
    M libc/test/src/math/smoke/CMakeLists.txt
    A libc/test/src/math/smoke/totalorder_test.cpp
    A libc/test/src/math/smoke/totalorderf128_test.cpp
    A libc/test/src/math/smoke/totalorderf_test.cpp

  Log Message:
  -----------
  [libc][math][c23] Add entrypoints and tests for totalorder{,f,f128} (#100593)


  Commit: f08df56d3af3e67ab39ebbfb62be3ed3f86d0c9d
      https://github.com/llvm/llvm-project/commit/f08df56d3af3e67ab39ebbfb62be3ed3f86d0c9d
  Author: Mark de Wever <koraq at xs4all.nl>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

  Changed paths:
    M libcxx/include/__format/formatter.h
    M libcxx/include/__format/formatter_bool.h
    M libcxx/include/__format/formatter_char.h
    M libcxx/include/__format/formatter_floating_point.h
    M libcxx/include/__format/formatter_integer.h
    M libcxx/include/__format/formatter_pointer.h
    M libcxx/include/__format/formatter_string.h
    M libcxx/include/format
    M libcxx/modules/std/format.inc
    A libcxx/test/std/utilities/format/format.formatter/format.formatter.locking/enable_nonlocking_formatter_optimization.compile.pass.cpp

  Log Message:
  -----------
  [libc++][format] Implements P3107R5 in <format>. (#86713)

This adds the new std::enable_nonlocking_formatter_optimization trait in
<format>. This trait will be used in std::print to implement the
performance benefits.

Implements parts of
- P3107R5 - Permit an efficient implementation of ``std::print``


  Commit: 39b6900852e7a1187bd742ba5c1387ca1be58e2c
      https://github.com/llvm/llvm-project/commit/39b6900852e7a1187bd742ba5c1387ca1be58e2c
  Author: Mark de Wever <koraq at xs4all.nl>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

  Changed paths:
    M libcxx/include/__iterator/bounded_iter.h
    M libcxx/include/__iterator/wrap_iter.h
    M libcxx/include/deque

  Log Message:
  -----------
  [libc++][spaceship] Removes unneeded relational operators. (#100441)

This is a followup of https://github.com/llvm/llvm-project/pull/99343.
Since that patch was quite late in the LLVM-19 release cycle some of the
unneeded relational operator were not removed in C++20.

This removes them and gives the change a bit more "baking" time, just in
case there are issues with this change in user code. This change is
intended to be an NFC.


  Commit: 2acf77f987331c05520c5bfd849326909ffce983
      https://github.com/llvm/llvm-project/commit/2acf77f987331c05520c5bfd849326909ffce983
  Author: Mike Rice <michael.p.rice at intel.com>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

  Changed paths:
    M clang/include/clang/Basic/AttributeCommonInfo.h
    M clang/lib/Basic/Attributes.cpp
    M clang/lib/Parse/ParseDecl.cpp
    M clang/lib/Sema/SemaStmtAttr.cpp
    M clang/test/SemaHLSL/Loops/unroll.hlsl
    A clang/test/TableGen/attrs-parser-string-switches.td
    M clang/utils/TableGen/ClangAttrEmitter.cpp

  Log Message:
  -----------
  [clang] Update argument checking tablegen code to use a 'full' name (#99993)

In 92fc1eb0c1ae3813f2ac9208e2c74207aae9d23 the HLSLLoopHint attribute
was added with an 'unroll' spelling. There is an existing LoopHint
attribute with the same spelling. These attributes have different
arguments.

The tablegen used to produce checks on arguments uses only the attribute
name, making it impossible to return correct info for attribute with
different argument types but the same name.

Improve the situation by using a 'full' name that combines the syntax,
scope, and name. This allows, for example, #pragma unroll and
[[unroll(x)]] to coexist correctly even with different argument types.

Also fix a bug in the StrictEnumParameters tablegen. If will now
correctly specify each parameter instead of only the first.


  Commit: c95abe94aebb6862c3518e590343df3b7376ccee
      https://github.com/llvm/llvm-project/commit/c95abe94aebb6862c3518e590343df3b7376ccee
  Author: Johannes Doerfert <johannes at jdoerfert.de>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

  Changed paths:
    A offload/plugins-nextgen/common/include/ErrorReporting.h
    M offload/plugins-nextgen/common/include/PluginInterface.h
    M offload/plugins-nextgen/common/src/PluginInterface.cpp
    M offload/src/omptarget.cpp
    A offload/test/sanitizer/double_free.c
    A offload/test/sanitizer/double_free_racy.c
    A offload/test/sanitizer/free_host_ptr.c
    A offload/test/sanitizer/free_wrong_ptr_kind.c
    A offload/test/sanitizer/free_wrong_ptr_kind.cpp
    M openmp/docs/design/Runtimes.rst

  Log Message:
  -----------
  [Offload] Implement double free (and other allocation error) reporting (#100261)

As a first step towards a GPU sanitizer we now can track allocations and
deallocations in order to report double frees, and other problems during
deallocation.


  Commit: d69d981d77ee2c9aa740e192d81dabb53c7c3cda
      https://github.com/llvm/llvm-project/commit/d69d981d77ee2c9aa740e192d81dabb53c7c3cda
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

  Changed paths:
    M clang/lib/Tooling/ArgumentsAdjusters.cpp
    M clang/test/Tooling/clang-check-extra-arg.cpp

  Log Message:
  -----------
  [Tooling] -fsyntax-only adjuster: remove -c and -S

compile_commands.json entries often have -c. When adding -fsyntax-only,
we should remove -c to prevent the following warning:

```
% clang -c -fsyntax-only a.c
clang: warning: argument unused during compilation: '-c' [-Wunused-command-line-argument]
```

Previously, -c and -S were inappropriately claimed in
`addPGOAndCoverageFlags` (see the workaround added by commit
a07b135ce0c0111bd83450b5dc29ef0381cdbc39). Now the workaround have been
removed (#98607). (clangDriver reports a -Wunused-command-line-argument
diagnostic for each unclaimed option.)

Fix #100909

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


  Commit: 1f3b0f4da0aa5142d7de3e6723538d35c34c9008
      https://github.com/llvm/llvm-project/commit/1f3b0f4da0aa5142d7de3e6723538d35c34c9008
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

  Changed paths:
    M clang/docs/MemorySanitizer.rst

  Log Message:
  -----------
  [docs][msan] List common cases reported by msan (#101105)

Fixes https://github.com/google/sanitizers/issues/1755.


  Commit: 5ea9d3d432350b0f63df61026f4eacdd504adee8
      https://github.com/llvm/llvm-project/commit/5ea9d3d432350b0f63df61026f4eacdd504adee8
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

  Changed paths:
    M clang/docs/MemorySanitizer.rst

  Log Message:
  -----------
  [docs][msan] Improve language consistency


  Commit: 442c33f3a3545dfbfa4589a92ab4f2981b6b197c
      https://github.com/llvm/llvm-project/commit/442c33f3a3545dfbfa4589a92ab4f2981b6b197c
  Author: Mark de Wever <koraq at xs4all.nl>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

  Changed paths:
    M libcxx/docs/Status/Cxx23Issues.csv
    M libcxx/include/stdatomic.h
    M libcxx/test/std/atomics/stdatomic.h.syn/types.compile.pass.cpp

  Log Message:
  -----------
  [libc++][stdatomic.h] Implements LWG3671. (#99775)

Implements:
- LWG3671 atomic_fetch_xor missing from stdatomic.h


  Commit: 5af7086a50249315109f0fabe8aaad344b37ac5a
      https://github.com/llvm/llvm-project/commit/5af7086a50249315109f0fabe8aaad344b37ac5a
  Author: Dmitry Chestnykh <dm.chestnykh at gmail.com>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

  Changed paths:
    M libcxxabi/src/demangle/ItaniumDemangle.h

  Log Message:
  -----------
  Make caches protected (#101184)


  Commit: 6992ebcb4b69fc7f116cd475e4731d3877118c1d
      https://github.com/llvm/llvm-project/commit/6992ebcb4b69fc7f116cd475e4731d3877118c1d
  Author: Justin Bogner <mail at justinbogner.com>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

  Changed paths:
    M llvm/include/llvm/Analysis/DXILResource.h
    M llvm/lib/Analysis/DXILResource.cpp
    M llvm/unittests/Analysis/DXILResourceTest.cpp

  Log Message:
  -----------
  Reapply "[DXIL][Analysis] Make alignment on StructuredBuffer optional" (#101113)

Unfortunately storing a `MaybeAlign` in ResourceInfo deletes our move
constructor in compilers that haven't implemented [P0602R4], like GCC 7.
Since we only ever use the alignment in ways where alignment 1 and unset
are ambiguous anyway, we'll just store the integer AlignLog2 value that
we'll eventually use directly.

[P0602R4]:
https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2018/p0602r4.html

This reverts commit c22171f12fa9f260e2525cf61b93c136889e17f2, reapplying
a94edb6b8e321a46fe429934236aaa4e2e9fb97f.


  Commit: eb03279ddcc4bb655021101f0038ece2cec3158a
      https://github.com/llvm/llvm-project/commit/eb03279ddcc4bb655021101f0038ece2cec3158a
  Author: vporpo <vporpodas at google.com>
  Date:   2024-07-30 (Tue, 30 Jul 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 CastInst (#101097)

This patch implements sandboxir::CastInst which mirrors llvm::CastInst.

Just like in llvm::CastInst there are multiple opcodes that correspond
to a CastInst, like ZExt, FPToUI etc. These are implemented in follow-up
patches.


  Commit: cc7aef97bb74b53175365a7fa4137aada902b3f2
      https://github.com/llvm/llvm-project/commit/cc7aef97bb74b53175365a7fa4137aada902b3f2
  Author: Helena Kotas <hekotas at microsoft.com>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

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

  Log Message:
  -----------
  [HLSL][NFC] Initialize DiagnoseHLSLAvailability members (#100778)

Improves readability and removes static verifier trigger.


  Commit: 51f728376c4c68b0b287e7f6be568607f9a69452
      https://github.com/llvm/llvm-project/commit/51f728376c4c68b0b287e7f6be568607f9a69452
  Author: Nicolai Hähnle <nicolai.haehnle at amd.com>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

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

  Log Message:
  -----------
  AMDGPU: Remove a pointless SIFunctionResourceInfo::getTotalNumVgprs o… (#101158)

…verload


  Commit: 99a0a12ad66b64616788619efbe2db52c066fbe2
      https://github.com/llvm/llvm-project/commit/99a0a12ad66b64616788619efbe2db52c066fbe2
  Author: Peter Klausler <35819229+klausler at users.noreply.github.com>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

  Changed paths:
    M flang/lib/Parser/program-parsers.cpp
    M flang/lib/Parser/stmt-parser.h
    A flang/test/Parser/recovery04.f90

  Log Message:
  -----------
  [flang][parser] Better error recovery for SUBROUTINE/FUNCTION statements (#100664)

When there's an error in a SUBROUTINE or FUNCTION statement, errors
cascade quickly because the body of the subprogram or interface isn't in
the right context. So, if a SUBROUTINE or FUNCTION statement is
expected, and contains a SUBROUTINE or FUNCTION keyword, it counts as
one -- retain and emit any errors pertaining to the arguments or suffix,
recover to the end of the line if needed, and proceed.


  Commit: d067062a42b0ce591f03c15cb76fe0fb27d1d9c1
      https://github.com/llvm/llvm-project/commit/d067062a42b0ce591f03c15cb76fe0fb27d1d9c1
  Author: nicole mazzuca <nicole at strega-nil.co>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

  Changed paths:
    M libcxx/include/array

  Log Message:
  -----------
  [libc++] fix `array<T, 0>` under `USE_WRAP_ITER` (#101156)

`array<T, 0>::iterator` was always a pointer even when
`_LIBCXX_ABI_USE_WRAP_ITER_IN_STD_ARRAY` was defined. This patch fixes
that minor bug.

Discovered as part of [#100603][].

Drive-by: switch from `typedef` to `using` in `<array>`

[#100603]: https://github.com/llvm/llvm-project/pull/100603


  Commit: 9f75270ceb3a0a3fb9b97980031a59652b7d5473
      https://github.com/llvm/llvm-project/commit/9f75270ceb3a0a3fb9b97980031a59652b7d5473
  Author: Alexis Engelke <engelke at in.tum.de>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

  Changed paths:
    M llvm/include/llvm/IR/BasicBlock.h
    M llvm/include/llvm/IR/Function.h
    M llvm/lib/IR/BasicBlock.cpp
    M llvm/lib/IR/Function.cpp
    M llvm/unittests/IR/FunctionTest.cpp

  Log Message:
  -----------
  [IR] Add per-function numbers to basic blocks (#101052)

Every basic block that is linked into a function now has a unique
number, which can be queried using getNumber(). Numbers are densely
allocated, but not re-assigned on block removal for stability. Block
numbers are intended to be fairly stable and only be updated when
removing a several basic blocks to make sure the numbering doesn't
become too sparse.

To reduce holes in the numbering, renumberBlocks() can be called to
re-assign numbers in block order.

Additionally, getMaxBlockNumber() returns a value larger than the
largest block number, intended to pre-allocate/resize vectors.

Furthermore, this introduces the concept of a "block number epoch" --
an integer that changes after every renumbering. This is useful for
identifying use of block numbers after renumbering: on initialization,
the current epoch is stored, and on all subsequent accesses, equality
with the current epoch can be asserted.

I added a validate method to catch cases where something goes wrong,
even if I can't really imagine how invalid numbers can occur. But I
think it's better to be safe and rule out this potential source of bugs
when more things depend on the numbering.

Previous discussion in:
https://discourse.llvm.org/t/rfc-add-auxiliary-field-for-per-pass-custom-data-to-basicblock/80229


  Commit: b7db119eadde630f7ba7e4abc1ca6ee4fa8ccdfe
      https://github.com/llvm/llvm-project/commit/b7db119eadde630f7ba7e4abc1ca6ee4fa8ccdfe
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

  Changed paths:
    M llvm/lib/Target/ARM/MCTargetDesc/ARMWinCOFFObjectWriter.cpp
    M llvm/test/MC/ARM/Windows/invalid-relocation.s

  Log Message:
  -----------
  [MC,ARM] Change a report_fatal_error to reportError

Similar to other "unsupported relocation type" diagnostics, we don't
report the internal fixup name.


  Commit: 8a4b0954030be3a6e81b098d4e3a1f87ded151b9
      https://github.com/llvm/llvm-project/commit/8a4b0954030be3a6e81b098d4e3a1f87ded151b9
  Author: Philip Reames <preames at rivosinc.com>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

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

  Log Message:
  -----------
  [RISCV][TLI/TTI] Reject scalable offsets in isLegalAddressing mode

None of our addressing modes support a scalable offset.  I could not
figure out how to get LSR to actually try such a formula, but let's
be defensive and explicitly prevent this case from being considered
a valid address mode match.


  Commit: 3cc288afedd6b9954dd0b5aa28dc6cc5fedee2c2
      https://github.com/llvm/llvm-project/commit/3cc288afedd6b9954dd0b5aa28dc6cc5fedee2c2
  Author: vporpo <vporpodas at google.com>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

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

  Log Message:
  -----------
  [SandboxIR] Implement PtrToIntInst (#101211)

This patch implements sandboxir::PtrToIntInst mirroring
llvm::PtrToIntInst.


  Commit: f86ce8675f74a6b8937f99e3562fbcae51fd1f2f
      https://github.com/llvm/llvm-project/commit/f86ce8675f74a6b8937f99e3562fbcae51fd1f2f
  Author: Haowei Wu <haowei at google.com>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

  Changed paths:
    M clang/lib/CodeGen/CodeGenModule.cpp
    R clang/test/Modules/inline-builtins.cppm

  Log Message:
  -----------
  Revert "[C++20] [Modules] Always emit the inline builtins"

This reverts commit ca8a4111f796fe8533e0af95557875b15becff06.
This patch broke clang test on Windows x64 msvc


  Commit: 9843843c88f6cd8fa68c301ba751c001c254cb63
      https://github.com/llvm/llvm-project/commit/9843843c88f6cd8fa68c301ba751c001c254cb63
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-07-31 (Wed, 31 Jul 2024)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
    M llvm/test/CodeGen/AMDGPU/dag-divergence.ll
    M llvm/test/CodeGen/AMDGPU/inline-asm.ll
    M llvm/test/CodeGen/AMDGPU/sdag-print-divergence.ll
    M llvm/test/tools/UpdateTestChecks/update_llc_test_checks/Inputs/amdgpu_isel.ll.expected

  Log Message:
  -----------
  SelectionDAG: Do not propagate divergence through copy glue (#101210)

This fixes DAG divergence mishandling inline asm.

This was considering the glue nodes for divergence, when the
divergence should only come from the individual CopyFromRegs
that are glued. As a result, having any VGPR CopyFromRegs would
taint any uniform SGPR copies as divergent, resulting in SGPR
copies to VGPR virtual registers later.


  Commit: 245e6070daa191b1fc6ce05d8fc38a74f918159a
      https://github.com/llvm/llvm-project/commit/245e6070daa191b1fc6ce05d8fc38a74f918159a
  Author: Teresa Johnson <tejohnson at google.com>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

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

  Log Message:
  -----------
  [LoopSink] Exit loop finding BBs to sink into early when possible (NFC) (#101115)

As noted in the comments, findBBsToSinkInto is
   O(UseBBs.size() * ColdLoopBBs.size())

A very large function with a huge loop was incurring a high compile time
in this code. The size of the ColdLoopBBs set was over 14K. There is a
limit on the size of the UseBBs set, but not the ColdLoopBBs (and adding
a limit for the latter actually slowed down some later passes).

This change exits the loop early once we detect that there is no further
refinement possible for the BBsToSinkInto set. This is possible because
the ColdLoopBBs set is sorted in ascending magnitude of frequency.

This cut down the LoopSinkPass time by around 33% (78s to just over
50s).


  Commit: 4ad2628ec9bf492f7c2ad4a9ada835d06b1a55e7
      https://github.com/llvm/llvm-project/commit/4ad2628ec9bf492f7c2ad4a9ada835d06b1a55e7
  Author: RoseZhang03 <rosezhang at google.com>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

  Changed paths:
    M libc/fuzzing/stdlib/CMakeLists.txt
    A libc/fuzzing/stdlib/heap_sort_fuzz.cpp

  Log Message:
  -----------
  [libc] fuzz test for heap_sort (#100826)

Made a fuzz test for heap_sort based off of qsort_fuzz implementation


  Commit: 8364a6e108faea1a6f05f7bb53720a6fc101fed2
      https://github.com/llvm/llvm-project/commit/8364a6e108faea1a6f05f7bb53720a6fc101fed2
  Author: RoseZhang03 <rosezhang at google.com>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

  Changed paths:
    M libc/CMakeLists.txt

  Log Message:
  -----------
  [libc] Switch ON for New HeaderGen (#100044)

Turned option to use New HeaderGen when building libc to ON


  Commit: f70f1228035c9610de38e0e376afdacb647c4ad9
      https://github.com/llvm/llvm-project/commit/f70f1228035c9610de38e0e376afdacb647c4ad9
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    A llvm/test/Transforms/SLPVectorizer/X86/extract-vectorized-operand.ll

  Log Message:
  -----------
  [SLP]Fix PR101213: Reuse extractelement, only if its vector operand comes before new vector value.

When trying to reuse extractelement instruction, need to check that it
is inserted into proper position. Its original vector operand should
come before new vector value, otherwise new extractelement instruction
must be generated.

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


  Commit: 89b67a640063189bbd727ade4c912f6e48fee5a0
      https://github.com/llvm/llvm-project/commit/89b67a640063189bbd727ade4c912f6e48fee5a0
  Author: David Green <david.green at arm.com>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

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

  Log Message:
  -----------
  [SLP] Cluster SortedBases before sorting. (#101144)

In order to enforce a strict-weak ordering, this patch clusters the
bases that are being sorted by the root - the first value in a gep
chain. The sorting is then performed in each cluster.


  Commit: 9808f484534f503e9975d367082ff6933676ca20
      https://github.com/llvm/llvm-project/commit/9808f484534f503e9975d367082ff6933676ca20
  Author: Allan Shortlidge <tshortli at gmail.com>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

  Changed paths:
    M compiler-rt/lib/builtins/os_version_check.c
    M compiler-rt/test/builtins/TestCases/Darwin/platform_version_check_test.c

  Log Message:
  -----------
  [compiler-rt][builtins] Upstream __isPlatformOrVariantPlatformVersionAtLeast() (#100605)

Add `__isPlatformOrVariantPlatformVersionAtLeast()` which is used to
check OS version availability from zippered libraries on macOS. This
routine is needed for complete macCatalyst support in the Swift
compiler.


  Commit: cdfd884b0ec698f86a321ba53dc4d9c0b0e930fa
      https://github.com/llvm/llvm-project/commit/cdfd884b0ec698f86a321ba53dc4d9c0b0e930fa
  Author: S. Bharadwaj Yadavalli <Bharadwaj.Yadavalli at microsoft.com>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

  Changed paths:
    M llvm/lib/Target/DirectX/DXIL.td
    M llvm/lib/Target/DirectX/DXILOpBuilder.cpp
    M llvm/lib/Target/DirectX/DXILOpBuilder.h
    M llvm/test/CodeGen/DirectX/abs.ll
    M llvm/test/CodeGen/DirectX/acos.ll
    M llvm/test/CodeGen/DirectX/acos_error.ll
    M llvm/test/CodeGen/DirectX/asin.ll
    M llvm/test/CodeGen/DirectX/asin_error.ll
    M llvm/test/CodeGen/DirectX/atan.ll
    M llvm/test/CodeGen/DirectX/atan_error.ll
    M llvm/test/CodeGen/DirectX/ceil.ll
    M llvm/test/CodeGen/DirectX/ceil_error.ll
    M llvm/test/CodeGen/DirectX/clamp.ll
    M llvm/test/CodeGen/DirectX/comput_ids.ll
    M llvm/test/CodeGen/DirectX/cos.ll
    M llvm/test/CodeGen/DirectX/cos_error.ll
    M llvm/test/CodeGen/DirectX/cosh.ll
    M llvm/test/CodeGen/DirectX/cosh_error.ll
    M llvm/test/CodeGen/DirectX/dot2_error.ll
    M llvm/test/CodeGen/DirectX/dot3_error.ll
    M llvm/test/CodeGen/DirectX/dot4_error.ll
    M llvm/test/CodeGen/DirectX/exp.ll
    M llvm/test/CodeGen/DirectX/exp2_error.ll
    M llvm/test/CodeGen/DirectX/fabs.ll
    M llvm/test/CodeGen/DirectX/fdot.ll
    A llvm/test/CodeGen/DirectX/flattened_thread_id_in_group_error.ll
    M llvm/test/CodeGen/DirectX/floor.ll
    M llvm/test/CodeGen/DirectX/floor_error.ll
    M llvm/test/CodeGen/DirectX/fmax.ll
    M llvm/test/CodeGen/DirectX/fmin.ll
    M llvm/test/CodeGen/DirectX/frac_error.ll
    A llvm/test/CodeGen/DirectX/group_id_error.ll
    M llvm/test/CodeGen/DirectX/idot.ll
    M llvm/test/CodeGen/DirectX/isinf.ll
    M llvm/test/CodeGen/DirectX/isinf_error.ll
    M llvm/test/CodeGen/DirectX/log.ll
    M llvm/test/CodeGen/DirectX/log10.ll
    M llvm/test/CodeGen/DirectX/log2.ll
    M llvm/test/CodeGen/DirectX/log2_error.ll
    M llvm/test/CodeGen/DirectX/pow.ll
    M llvm/test/CodeGen/DirectX/reversebits.ll
    M llvm/test/CodeGen/DirectX/round.ll
    M llvm/test/CodeGen/DirectX/round_error.ll
    M llvm/test/CodeGen/DirectX/rsqrt.ll
    M llvm/test/CodeGen/DirectX/rsqrt_error.ll
    M llvm/test/CodeGen/DirectX/sin.ll
    M llvm/test/CodeGen/DirectX/sin_error.ll
    A llvm/test/CodeGen/DirectX/sin_no_stage_error.ll
    M llvm/test/CodeGen/DirectX/sinh.ll
    M llvm/test/CodeGen/DirectX/sinh_error.ll
    M llvm/test/CodeGen/DirectX/smax.ll
    M llvm/test/CodeGen/DirectX/smin.ll
    M llvm/test/CodeGen/DirectX/sqrt.ll
    M llvm/test/CodeGen/DirectX/sqrt_error.ll
    M llvm/test/CodeGen/DirectX/tan.ll
    M llvm/test/CodeGen/DirectX/tan_error.ll
    M llvm/test/CodeGen/DirectX/tanh.ll
    M llvm/test/CodeGen/DirectX/tanh_error.ll
    A llvm/test/CodeGen/DirectX/thread_id_error.ll
    A llvm/test/CodeGen/DirectX/thread_id_in_group_error.ll
    M llvm/test/CodeGen/DirectX/trunc.ll
    M llvm/test/CodeGen/DirectX/trunc_error.ll
    M llvm/test/CodeGen/DirectX/umax.ll
    M llvm/test/CodeGen/DirectX/umin.ll
    M llvm/utils/TableGen/DXILEmitter.cpp

  Log Message:
  -----------
  [DXIL] Add DXIL version-specific TableGen specification and implementation of DXIL Ops (#97593)

Update TableGen specification of DXIL Op records in DXIL.td per the
current design document.

- Facilitate specification of overloads, shader stage and attributes
predicated on DXIL Ops predicated DXIL version.

Implement functionality to consume in TableGen backend, DXILEmitter, the
above specification enhancements, and generate C++ code (in
(DXILOperations.inc) that represents properties of DXIL Ops, associated
type declarations and corresponding accessor functions.

Changes to DXIL Op Lowering pass to consume the DXIL Op representation
generated by the TableGen back end.

Add mtriple with the required shader model version to commandline of
tests.


  Commit: d9c85338ea9baa0290725e36c5ba548347a57e18
      https://github.com/llvm/llvm-project/commit/d9c85338ea9baa0290725e36c5ba548347a57e18
  Author: MaheshRavishankar <1663364+MaheshRavishankar at users.noreply.github.com>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

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

  Log Message:
  -----------
  [mlir][Linalg] Add a pattern to fold concats of fill. (#98995)

If a concat has all its operands as just fills, and the values match,
then the fill could happen on the concatenated values of the `outs`
operands.

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


  Commit: 76a15e5fc1af921de229190f3ca6189fcdd28277
      https://github.com/llvm/llvm-project/commit/76a15e5fc1af921de229190f3ca6189fcdd28277
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

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

  Log Message:
  -----------
  [RISCV] Keep all the setOperationActions for the same types and opcodes together.

Some of XCV subtarget checks were in their own area.


  Commit: 4eb5450f630849ee0518487de38d857fbe5b1aee
      https://github.com/llvm/llvm-project/commit/4eb5450f630849ee0518487de38d857fbe5b1aee
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

  Changed paths:
    M llvm/include/llvm/MC/MCAsmBackend.h
    M llvm/include/llvm/MC/MCAssembler.h
    M llvm/include/llvm/MC/MCSection.h
    M llvm/lib/MC/MCAssembler.cpp
    M llvm/lib/MC/MCSection.cpp
    M llvm/lib/Target/Hexagon/MCTargetDesc/HexagonAsmBackend.cpp
    M llvm/lib/Target/X86/MCTargetDesc/X86AsmBackend.cpp

  Log Message:
  -----------
  Revert "[MC] Compute fragment offsets eagerly"

This reverts commit 1a47f3f3db66589c11f8ddacfeaecc03fb80c510.

Fix #100283

This commit is actually a trigger of other preexisting problems:

* Size change of fill fragments does not influence the fixed-point iteration.
* The `invalid number of bytes` error is reported too early. Since
  `.zero A-B` might have temporary negative values in the first few
  iterations.

However, the problems appeared at least "benign" (did not affect the
Linux kernel builds) before this commit.


  Commit: 6c7557d44139e335c037c644545388c7e7d6a2e4
      https://github.com/llvm/llvm-project/commit/6c7557d44139e335c037c644545388c7e7d6a2e4
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

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

  Log Message:
  -----------
  [DXIL] Fix -Wunused-but-set-variable after #97593


  Commit: a6ef0864e9cf365a5cc4a3c39c9c749c49c87c1d
      https://github.com/llvm/llvm-project/commit/a6ef0864e9cf365a5cc4a3c39c9c749c49c87c1d
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    R llvm/test/Transforms/SLPVectorizer/X86/extract-vectorized-operand.ll

  Log Message:
  -----------
  Revert "[SLP]Fix PR101213: Reuse extractelement, only if its vector operand comes before new vector value."

This reverts commit f70f1228035c9610de38e0e376afdacb647c4ad9 to fix the
crash reported by https://lab.llvm.org/buildbot/#/builders/133/builds/2456.


  Commit: e59c8322632d9e6c9a56d9dfbaf79b4c4ba05bfa
      https://github.com/llvm/llvm-project/commit/e59c8322632d9e6c9a56d9dfbaf79b4c4ba05bfa
  Author: vporpo <vporpodas at google.com>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

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

  Log Message:
  -----------
  [SandboxIR] Implement BitCastInst (#101227)

This patch implements sandboxir::BitCastInst which mirrors
llvm::BitCastInst.


  Commit: 273e74b4458fa0d11cafb31b5b2164a8d2006541
      https://github.com/llvm/llvm-project/commit/273e74b4458fa0d11cafb31b5b2164a8d2006541
  Author: Teresa Johnson <tejohnson at google.com>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

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

  Log Message:
  -----------
  [LCSSA] Cache the loop exit blocks across recursive analysis (NFC) (#101087)

The computation of loop exit blocks recently showed up as a huge compile
time cost for a large file. This computation was already being cached
during an invocation of formLCSSAForInstructions, but can also be cached
across callers formLCSSA and formLCSSARecursively (the latter was what
was being invoked in the examined case).

Since each of these functions has an external entry point invoked from
other passes, doing so required refactoring each into a worker mechanism
that takes a LoopExitBlocks map, and the externally callable version
that declares the map. That way we can pass it down from the outermost
formLCSSARecursively.

This reduced the time spent in the LCSSA pass from ~110s to ~1s.


  Commit: c69ed8a3122569a65cd54d8e0d5ef9431f160245
      https://github.com/llvm/llvm-project/commit/c69ed8a3122569a65cd54d8e0d5ef9431f160245
  Author: Edd Dawson <edd.dawson at sony.com>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

  Changed paths:
    M clang/lib/Driver/ToolChains/PS4CPU.cpp
    M clang/test/Driver/ps4-linker.c

  Log Message:
  -----------
  [PS4][Driver] Only pass -lto-debug-options to linker when necessary (#101202)

The PS4 linker doesn't accept an empty LTO options string. Passing
nothing is also consistent with other drivers.

SIE tracker: TOOLCHAIN-16575


  Commit: 3ab0e958cc9338a8435ae29f9d381395aaba03c6
      https://github.com/llvm/llvm-project/commit/3ab0e958cc9338a8435ae29f9d381395aaba03c6
  Author: Jie Fu <jiefu at tencent.com>
  Date:   2024-07-31 (Wed, 31 Jul 2024)

  Changed paths:
    M polly/lib/Analysis/ScopBuilder.cpp

  Log Message:
  -----------
  [polly] Remove unused variable in ScopBuilder.cpp (NFC)

/llvm-project/polly/lib/Analysis/ScopBuilder.cpp:2725:18:
error: unused variable 'DT' [-Werror,-Wunused-variable]
  DominatorTree *DT = Stmt.getParent()->getDT();
                 ^
1 error generated.


  Commit: 6b1d13761ac0c9857763e5f4c0ae554f076dd9b7
      https://github.com/llvm/llvm-project/commit/6b1d13761ac0c9857763e5f4c0ae554f076dd9b7
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    A llvm/test/Transforms/SLPVectorizer/X86/extract-vectorized-operand.ll

  Log Message:
  -----------
  [SLP]Fix PR101213: Reuse extractelement, only if its vector operand comes before new vector value.

When trying to reuse extractelement instruction, need to check that it
is inserted into proper position. Its original vector operand should
come before new vector value, otherwise new extractelement instruction
must be generated.

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


  Commit: 39e192b379362e9e645427631c35450d55ed517d
      https://github.com/llvm/llvm-project/commit/39e192b379362e9e645427631c35450d55ed517d
  Author: Alexandre Ganea <aganea at havenstudios.com>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

  Changed paths:
    M llvm/lib/Support/Windows/Process.inc
    M llvm/lib/Support/Windows/Signals.inc

  Log Message:
  -----------
  [Support] Silence warnings when retrieving exported functions (#97905)

Since functions exported from DLLs are type-erased, before this patch I
was seeing the new Clang 19 warning `-Wcast-function-type-mismatch`.

This happens when building LLVM on Windows.

Following discussion in
https://github.com/llvm/llvm-project/commit/593f708118aef792f434185547f74fedeaf51dd4#commitcomment-143905744


  Commit: 99fb40d488c9d53dc1dfa0a1791f690523d7e50a
      https://github.com/llvm/llvm-project/commit/99fb40d488c9d53dc1dfa0a1791f690523d7e50a
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

  Changed paths:
    R llvm/test/CodeGen/RISCV/rvv/mask-exts-truncs-rv32.ll
    R llvm/test/CodeGen/RISCV/rvv/mask-exts-truncs-rv64.ll
    A llvm/test/CodeGen/RISCV/rvv/mask-exts-truncs.ll
    R llvm/test/CodeGen/RISCV/rvv/vmv.s.x-rv32.ll
    R llvm/test/CodeGen/RISCV/rvv/vmv.s.x-rv64.ll
    A llvm/test/CodeGen/RISCV/rvv/vmv.s.x.ll
    R llvm/test/CodeGen/RISCV/rvv/vmv.v.v-rv32.ll
    R llvm/test/CodeGen/RISCV/rvv/vmv.v.v-rv64.ll
    A llvm/test/CodeGen/RISCV/rvv/vmv.v.v.ll
    R llvm/test/CodeGen/RISCV/rvv/vmv.v.x-rv32.ll
    R llvm/test/CodeGen/RISCV/rvv/vmv.v.x-rv64.ll
    A llvm/test/CodeGen/RISCV/rvv/vmv.v.x.ll
    R llvm/test/CodeGen/RISCV/rvv/vmv.x.s-rv32.ll
    R llvm/test/CodeGen/RISCV/rvv/vmv.x.s-rv64.ll
    A llvm/test/CodeGen/RISCV/rvv/vmv.x.s.ll
    R llvm/test/CodeGen/RISCV/rvv/vrgather-rv32.ll
    R llvm/test/CodeGen/RISCV/rvv/vrgather-rv64.ll
    A llvm/test/CodeGen/RISCV/rvv/vrgather.ll
    R llvm/test/CodeGen/RISCV/rvv/vrgatherei16-rv32.ll
    R llvm/test/CodeGen/RISCV/rvv/vrgatherei16-rv64.ll
    A llvm/test/CodeGen/RISCV/rvv/vrgatherei16.ll
    R llvm/test/CodeGen/RISCV/rvv/vslide1down-rv32.ll
    R llvm/test/CodeGen/RISCV/rvv/vslide1down-rv64.ll
    A llvm/test/CodeGen/RISCV/rvv/vslide1down.ll
    R llvm/test/CodeGen/RISCV/rvv/vslide1up-rv32.ll
    R llvm/test/CodeGen/RISCV/rvv/vslide1up-rv64.ll
    A llvm/test/CodeGen/RISCV/rvv/vslide1up.ll

  Log Message:
  -----------
  [RISCV] Merge more rv32/rv64 intrtinsic tests that have (or should have) the same content. NFC

We weren't testing i64 vrgather.vv on rv32.


  Commit: 12189f800585ab459afa20b4f159db93ae474b57
      https://github.com/llvm/llvm-project/commit/12189f800585ab459afa20b4f159db93ae474b57
  Author: Peiming Liu <peiming at google.com>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/SparseTensor/IR/SparseTensorOps.td
    M mlir/lib/Dialect/SparseTensor/IR/SparseTensorDialect.cpp
    M mlir/test/Dialect/SparseTensor/invalid.mlir
    M mlir/test/Dialect/SparseTensor/roundtrip.mlir

  Log Message:
  -----------
  [mlir][sparse] introduce `sparse_tensor.extract_value` operation. (#101219)


  Commit: ebdcb76d1a3b6d8fed06c91c0a318f07f4bca628
      https://github.com/llvm/llvm-project/commit/ebdcb76d1a3b6d8fed06c91c0a318f07f4bca628
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

  Changed paths:
    M libc/benchmarks/gpu/src/math/CMakeLists.txt

  Log Message:
  -----------
  [libc] Only link in the appropriate architecture's device libs


  Commit: 546e4a210cb23e24a8086532c007280cb8ad3f13
      https://github.com/llvm/llvm-project/commit/546e4a210cb23e24a8086532c007280cb8ad3f13
  Author: Job Henandez Lara <hj93 at protonmail.com>
  Date:   2024-07-30 (Tue, 30 Jul 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/docs/math/index.rst
    M libc/spec/stdc.td
    M libc/src/math/CMakeLists.txt
    M libc/src/math/generic/CMakeLists.txt
    A libc/src/math/generic/setpayload.cpp
    A libc/src/math/generic/setpayloadf.cpp
    A libc/src/math/generic/setpayloadf128.cpp
    A libc/src/math/setpayload.h
    A libc/src/math/setpayloadf.h
    A libc/src/math/setpayloadf128.h
    M libc/test/src/math/smoke/CMakeLists.txt
    A libc/test/src/math/smoke/setpayload_test.cpp
    A libc/test/src/math/smoke/setpayloadf128_test.cpp
    A libc/test/src/math/smoke/setpayloadf_test.cpp

  Log Message:
  -----------
  [libc][math][c23] Add entrypoints and tests for setpayload{,f,f128} (#101122)


  Commit: 79dcd93b70e1e36fea43b1bb297b98299bbbf612
      https://github.com/llvm/llvm-project/commit/79dcd93b70e1e36fea43b1bb297b98299bbbf612
  Author: Sayhaan Siddiqui <49014204+sayhaan at users.noreply.github.com>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

  Changed paths:
    M bolt/include/bolt/Rewrite/DWARFRewriter.h
    M bolt/lib/Rewrite/CMakeLists.txt
    M bolt/lib/Rewrite/DWARFRewriter.cpp
    M bolt/test/X86/debug-fission-single-convert.s
    M bolt/test/X86/debug-fission-single.s
    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/dwarf5-df-types-modify-dwo-name-mixed.test
    M bolt/test/X86/dwarf5-df-types-modify-dwo-name.test
    R bolt/test/X86/dwarf5-ftypes-dwo-mono-input-dwp-output.test

  Log Message:
  -----------
  [BOLT][DWARF] Remove option to write to DWP (#100771)

Remove the --write-dwp option as well as related code and tests.


  Commit: a982cabea3cfbf456a01ed85499fa7dfc7ec18c7
      https://github.com/llvm/llvm-project/commit/a982cabea3cfbf456a01ed85499fa7dfc7ec18c7
  Author: Jon Roelofs <jonathan_roelofs at apple.com>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

  Changed paths:
    M clang/cmake/modules/AddClang.cmake
    M lldb/cmake/modules/AddLLDB.cmake
    M llvm/CMakeLists.txt
    M llvm/cmake/modules/AddLLVM.cmake

  Log Message:
  -----------
  [cmake][llvm] Limit the number of Xcode schemes created by default (#101243)

CMake -GXcode would otherwise offer to create one scheme for each
target, which ends up being a lot. For now, limit the default to the
`check-*` LIT targets, plus `ALL_BUILD` and `install`.

For targets that aren't in the default list, we now have a configuration
variable to promote an extra list of targets into schemes, for example
`-DLLVM_XCODE_EXTRA_TARGET_SCHEMES="TargetParserTests;SupportTests"` to
add schemes for `TargetParserTests` and `SupportTests` respectively.


  Commit: 80c0e8d572d3b1c34d66faffc42bcfc9432583ec
      https://github.com/llvm/llvm-project/commit/80c0e8d572d3b1c34d66faffc42bcfc9432583ec
  Author: Farzon Lotfi <1802579+farzonl at users.noreply.github.com>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/fp-strict-libcalls-msvc32.ll

  Log Message:
  -----------
  [x86][Windows] Fix chromium build break (#101268)

Windows does not support float C89 math functions like:
- acosf
- asinf
- atanf
- coshf
- sinhf
- tanhf 
All 6 are disabled in
[TargetLibraryInfo.cpp:293](https://github.com/llvm/llvm-project/blob/39e192b379362e9e645427631c35450d55ed517d/llvm/lib/Analysis/TargetLibraryInfo.cpp#L293C4-L296C41)
These 6 libfuncs need to be type promoted.

This PR fixes the bug introduced by
https://github.com/llvm/llvm-project/pull/98949


  Commit: 9589c128ae40df3e2277487544e693f3887f7d63
      https://github.com/llvm/llvm-project/commit/9589c128ae40df3e2277487544e693f3887f7d63
  Author: Allen <zhongyunde at huawei.com>
  Date:   2024-07-31 (Wed, 31 Jul 2024)

  Changed paths:
    M clang/lib/CodeGen/CGBuiltin.cpp
    A clang/test/CodeGen/math-libcalls-tbaa.c
    R clang/test/CodeGen/math-libcalls-tbaa.cpp

  Log Message:
  -----------
  [clang codegen] Emit int TBAA metadata on more FP math libcalls (#100302)

Follow #96025, except expf, more FP math libcalls in libm should also be
supported.

Fix https://github.com/llvm/llvm-project/issues/86635


  Commit: cc01c83a4ab10fc5421e2121ea273ff1adb3e84c
      https://github.com/llvm/llvm-project/commit/cc01c83a4ab10fc5421e2121ea273ff1adb3e84c
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

  Changed paths:
    A llvm/test/MC/ELF/layout-interdependency2.s

  Log Message:
  -----------
  [MC,test] Add a stress test for layout algorithm

Reduced from #100283


  Commit: d2f77eb8ec620c8068fa471a1d7b9c9756da1913
      https://github.com/llvm/llvm-project/commit/d2f77eb8ec620c8068fa471a1d7b9c9756da1913
  Author: NAKAMURA Takumi <geek4civic at gmail.com>
  Date:   2024-07-31 (Wed, 31 Jul 2024)

  Changed paths:
    M compiler-rt/include/profile/InstrProfData.inc
    M compiler-rt/lib/profile/InstrProfilingFile.c
    M llvm/include/llvm/ProfileData/InstrProf.h
    M llvm/include/llvm/ProfileData/InstrProfData.inc
    M llvm/lib/Transforms/Instrumentation/InstrProfiling.cpp
    M llvm/test/Instrumentation/InstrProfiling/mcdc.ll

  Log Message:
  -----------
  [MC/DC][Coverage] Introduce "Bitmap Bias" for continuous mode (#96126)

`counter_bias` is incompatible to Bitmap. The distance between Counters
and Bitmap is different between on-memory sections and profraw image.

Reference to `__llvm_profile_bitmap_bias` is generated only if
`-fcoverge-mcdc` `-runtime-counter-relocation` are specified. The
current implementation rejected their options.

```
Runtime counter relocation is presently not supported for MC/DC bitmaps
```


  Commit: 6aaf87021eda13727bfee690652cbbb9d1b3cdb2
      https://github.com/llvm/llvm-project/commit/6aaf87021eda13727bfee690652cbbb9d1b3cdb2
  Author: Job Henandez Lara <hj93 at protonmail.com>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

  Changed paths:
    M libc/spec/stdc.td

  Log Message:
  -----------
  [libc][math] fix header spec bug (#101273)


  Commit: c35c4c72e4977258fc1da940e0470e8d0671bf07
      https://github.com/llvm/llvm-project/commit/c35c4c72e4977258fc1da940e0470e8d0671bf07
  Author: Med Ismail Bennani <ismail at bennani.ma>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

  Changed paths:
    M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/CMakeLists.txt
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedProcessPythonInterface.cpp
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedProcessPythonInterface.h
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedProcessPythonInterface/CMakeLists.txt
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedProcessPythonInterface/ScriptedProcessPythonInterface.cpp
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedProcessPythonInterface/ScriptedProcessPythonInterface.h
    M lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp

  Log Message:
  -----------
  [lldb] Reland 2402b3213c2f with `-H` to debug the windows build issue

This patch relands 2402b3213c2f to investigate the ambigious typedef
issue happening on the windows bots:

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

However this patch adds the `-H` compiler flag when building
the ScriptedProcessPythonInterface library to be able to investigate the
include order issue.

This patch will be revert after 1 failing run on the windows bot.

Signed-off-by: Med Ismail Bennani <ismail at bennani.ma>


  Commit: be5a845e4c29aadb513ae6e5e2879dccf37efdbb
      https://github.com/llvm/llvm-project/commit/be5a845e4c29aadb513ae6e5e2879dccf37efdbb
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

  Changed paths:
    M llvm/include/llvm/MC/MCAsmBackend.h
    M llvm/include/llvm/MC/MCAssembler.h
    M llvm/include/llvm/MC/MCSection.h
    M llvm/lib/MC/MCAssembler.cpp
    M llvm/lib/MC/MCSection.cpp
    M llvm/lib/Target/Hexagon/MCTargetDesc/HexagonAsmBackend.cpp
    M llvm/lib/Target/X86/MCTargetDesc/X86AsmBackend.cpp
    M llvm/test/MC/ELF/relax-recompute-align.s

  Log Message:
  -----------
  [MC] Compute fragment offsets eagerly

This builds on top of commit 9d0754ada5dbbc0c009bcc2f7824488419cc5530
("[MC] Relax fragments eagerly") and relaxes fragments eagerly to
eliminate MCSection::HasLayout and `getFragmentOffset` overhead. The
approach is slightly different from
1a47f3f3db66589c11f8ddacfeaecc03fb80c510 and has less performance
benefit.

The new layout algorithm also addresses the following problems:

* Size change of MCFillFragment/MCOrgFragment did not influence the
  fixed-point iteration, which could be problematic for contrived cases.
* The `invalid number of bytes` error was reported too early. Since
  `.zero A-B` might have temporary negative values in the first few
  iterations.
* X86AsmBackend::finishLayout performed only one iteration, which might
  not converge. In addition, the removed `#ifndef NDEBUG` code (disabled
  by default) in X86AsmBackend::finishLayout was problematic, as !NDEBUG
  and NDEBUG builds evaluated fragment offsets at different times before
  this patch.
* The computed layout for relax-recompute-align.s is optimal now.

Builds with many text sections (e.g. full LTO) shall observe a decrease
in compile time while the new algorithm could be slightly slower for
some -O0 -g projects.

Aligned bundling from the deprecated PNaCl placed constraints how we can
perform iteration.


  Commit: 891d89804b9a8a2be949aa2aca30acba9bc64ebb
      https://github.com/llvm/llvm-project/commit/891d89804b9a8a2be949aa2aca30acba9bc64ebb
  Author: NAKAMURA Takumi <geek4civic at gmail.com>
  Date:   2024-07-31 (Wed, 31 Jul 2024)

  Changed paths:
    M llvm/test/Instrumentation/InstrProfiling/mcdc.ll

  Log Message:
  -----------
  Fixup (#96126) mcdc.ll for aarch64. align is not 8.


  Commit: 41003ff3fe344dee5c963d462a4bc6d528811d86
      https://github.com/llvm/llvm-project/commit/41003ff3fe344dee5c963d462a4bc6d528811d86
  Author: Tom Stellard <tstellar at redhat.com>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

  Changed paths:
    M .github/workflows/release-binaries.yml

  Log Message:
  -----------
  workflows/release-binaries: Fetch composite actions outside of default workspace (#100845)

Otherwise, the checkout step will override them.


  Commit: 7231776a0218033ea81f73e69ca4bf66734d3117
      https://github.com/llvm/llvm-project/commit/7231776a0218033ea81f73e69ca4bf66734d3117
  Author: Julius Alexandre <juliuswoosebert at gmail.com>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
    M llvm/test/CodeGen/RISCV/avgflooru.ll
    A llvm/test/CodeGen/X86/avgflooru-i128.ll
    M llvm/test/CodeGen/X86/avgflooru-scalar.ll

  Log Message:
  -----------
  Recommit "[DAG] Reducing instructions by better legalization handling of AVGFLOORU for illegal data types" (#101223)

Previous reverted merge: https://github.com/llvm/llvm-project/pull/99913

Original message:
**Issue:** https://github.com/rust-lang/rust/issues/124790
**Previous PR:** https://github.com/llvm/llvm-project/pull/99614

https://rust.godbolt.org/z/T7eKP3Tvo

**Aarch64:** https://alive2.llvm.org/ce/z/dqr2Kg
**x86:** https://alive2.llvm.org/ce/z/ze88Hw


  Commit: fd6faee5b3b5a7c0e5e87aa0b5719a1a48159ea0
      https://github.com/llvm/llvm-project/commit/fd6faee5b3b5a7c0e5e87aa0b5719a1a48159ea0
  Author: Shengchen Kan <shengchen.kan at intel.com>
  Date:   2024-07-31 (Wed, 31 Jul 2024)

  Changed paths:
    M clang/lib/Driver/ToolChains/Arch/X86.cpp
    M clang/test/Driver/x86-target-features.c
    M llvm/lib/Target/X86/X86Subtarget.cpp
    A llvm/test/CodeGen/X86/apx/i386-ndd.ll

  Log Message:
  -----------
  [Driver,CodeGen] Report error when enabling 64-bit-only features on non-64-bit arch (#101151)

In front-end, now we detect for `-mapx-features=/-mapxf` and `-muintr`,
which is aligned with GCC

https://gcc.gnu.org/bugzilla/attachment.cgi?id=58698&action=diff

In backend, we just disable these 64-bit-only features silently, so that
there is no error for
`-march=native -m32` on APX-supported arch.

llvm-issue: https://github.com/llvm/llvm-project/issues/94810
GCC thread: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115978


  Commit: f65fa5461dcbaf554babf10ca67ae8fea5b4da7e
      https://github.com/llvm/llvm-project/commit/f65fa5461dcbaf554babf10ca67ae8fea5b4da7e
  Author: Med Ismail Bennani <ismail at bennani.ma>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

  Changed paths:
    M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/CMakeLists.txt
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedProcessPythonInterface.cpp
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedProcessPythonInterface.h
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedProcessPythonInterface/CMakeLists.txt
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedProcessPythonInterface/ScriptedProcessPythonInterface.cpp
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedProcessPythonInterface/ScriptedProcessPythonInterface.h
    M lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp

  Log Message:
  -----------
  Revert "[lldb] Reland 2402b3213c2f with `-H` to debug the windows build issue"

This reverts commit c35c4c72e4977258fc1da940e0470e8d0671bf07.


  Commit: e72cdae47b4e263ea97b2bdd75cf44c1510cf3be
      https://github.com/llvm/llvm-project/commit/e72cdae47b4e263ea97b2bdd75cf44c1510cf3be
  Author: Med Ismail Bennani <ismail at bennani.ma>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

  Changed paths:
    M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/CMakeLists.txt
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedProcessPythonInterface.cpp
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedProcessPythonInterface.h
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedProcessPythonInterface/CMakeLists.txt
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedProcessPythonInterface/ScriptedProcessPythonInterface.cpp
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedProcessPythonInterface/ScriptedProcessPythonInterface.h
    M lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp

  Log Message:
  -----------
  [lldb] Reland 2402b3213c2f with `/H` to debug the windows build issue

This patch relands 2402b3213c2f to investigate the ambigious typedef
issue happening on the windows bots:

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

However this patch adds the `/H` compiler flag when building
the ScriptedProcessPythonInterface library to be able to investigate the
include order issue.

This patch will be revert after 1 failing run on the windows bot.

Signed-off-by: Med Ismail Bennani <ismail at bennani.ma>


  Commit: 57acabb8e09baa38b156965b2dc567a8c7eb2429
      https://github.com/llvm/llvm-project/commit/57acabb8e09baa38b156965b2dc567a8c7eb2429
  Author: Shengchen Kan <shengchen.kan at intel.com>
  Date:   2024-07-31 (Wed, 31 Jul 2024)

  Changed paths:
    M clang/test/Preprocessor/x86_target_features.c

  Log Message:
  -----------
  [Driver,X86] Update test Clang::Preprocessor/x86_target_features.c after #101151


  Commit: 7c1ddcd94e4bd5cfe34d5e1a6e4630ca2d526c36
      https://github.com/llvm/llvm-project/commit/7c1ddcd94e4bd5cfe34d5e1a6e4630ca2d526c36
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVInstrInfoVPseudos.td
    M llvm/test/CodeGen/RISCV/rvv/unmasked-tu.ll
    M llvm/test/CodeGen/RISCV/rvv/vfmerge.ll

  Log Message:
  -----------
  [RISCV] Remove isel patterns for riscv.vfmerge with vector-vector operands. (#101277)

The vfmerge intrinsic is only used by clang for vfmerge.vfm. vmerge.vvm
for both int and float should use the llvm.vmerge intrinsic.

This patch removes the vector-vector support for llvm.vfmerge and
updates the tests to test what clang really uses.


  Commit: 7a80c86726f7c37128bfee3618707c1607f5014d
      https://github.com/llvm/llvm-project/commit/7a80c86726f7c37128bfee3618707c1607f5014d
  Author: abhishek-kaushik22 <abhishek.kaushik at intel.com>
  Date:   2024-07-31 (Wed, 31 Jul 2024)

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

  Log Message:
  -----------
  [MC] Remove redundant null check, NFCI (#100928)

`getOrCreateSymbol` should never return a `nullptr`, add an assert and
remove the redundant null check in the if condition.


  Commit: ee1040b02adc95e376b295c4f59d30b991a8be9a
      https://github.com/llvm/llvm-project/commit/ee1040b02adc95e376b295c4f59d30b991a8be9a
  Author: eddyz87 <eddyz87 at gmail.com>
  Date:   2024-07-31 (Wed, 31 Jul 2024)

  Changed paths:
    A llvm/test/tools/llvm-objdump/BPF/disassemble-symbolize-operands.s
    M llvm/tools/llvm-objdump/llvm-objdump.cpp

  Log Message:
  -----------
  [llvm-objdump][BPF] --symbolize-operands: infer local labels for BPF (#100550)

Enable local labels computation for BPF disassembly when
`--symbolize-operands` option is specified.
This relies on `MCInstrAnalysis::evaluateBranch()` method, which is
already defined in `BPFMCInstrAnalysis::evaluateBranch`.

After this change the assembly code below:

        if r1 > 42 goto +1
        r1 -= 10
        ...

Would be printed as:

        if r1 > 42 goto +1 <L0>
        r1 -= 10
      <L0>:
        ...

(when `--symbolize-operands` option is set).

See https://reviews.llvm.org/D84191 for the main part of the
`--symbolize-operands` implementation logic.


  Commit: 94da6bfb27dcff68bebd0d1ce1a61346c231ed64
      https://github.com/llvm/llvm-project/commit/94da6bfb27dcff68bebd0d1ce1a61346c231ed64
  Author: Justin Bogner <mail at justinbogner.com>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

  Changed paths:
    M llvm/lib/Target/DirectX/DXILConstants.h
    M llvm/lib/Target/DirectX/DXILOpLowering.cpp
    M llvm/utils/TableGen/DXILEmitter.cpp

  Log Message:
  -----------
  [DirectX] Simplify DXIL_OP_INTRINSIC_MAP tablegen'ed code

Rather than generate a map with a known name, just define the mapping
so the code that uses it can do what it needs.

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


  Commit: 20d723e626befde6d1de66595ce37521cbde0538
      https://github.com/llvm/llvm-project/commit/20d723e626befde6d1de66595ce37521cbde0538
  Author: NAKAMURA Takumi <geek4civic at gmail.com>
  Date:   2024-07-31 (Wed, 31 Jul 2024)

  Changed paths:
    M compiler-rt/lib/profile/InstrProfilingFile.c

  Log Message:
  -----------
  Fix for #96126, add `BitmapBiasAddr` to definitions for unsupported targets.


  Commit: 1961f9fc6d7b207734354ca152a6c0a267cce0c0
      https://github.com/llvm/llvm-project/commit/1961f9fc6d7b207734354ca152a6c0a267cce0c0
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2024-07-31 (Wed, 31 Jul 2024)

  Changed paths:
    M clang/include/clang/AST/Type.h
    M clang/include/clang/Sema/Overload.h
    M clang/lib/AST/ExprCXX.cpp
    M clang/lib/AST/Interp/Context.cpp
    M clang/lib/AST/ItaniumMangle.cpp
    M clang/lib/AST/Type.cpp
    M clang/lib/Analysis/Consumed.cpp
    M clang/lib/Analysis/ThreadSafetyCommon.cpp
    M clang/lib/Sema/SemaDecl.cpp
    M clang/lib/Sema/SemaDeclAttr.cpp
    M clang/lib/Sema/SemaExprCXX.cpp
    M clang/lib/Sema/SemaTemplate.cpp

  Log Message:
  -----------
  [clang][NFC] Add Type::isPointerOrReferenceType() (#101206)

Seems to be a common pattern.


  Commit: 50cf413426805d32c19c71756f601c864dd6fa7a
      https://github.com/llvm/llvm-project/commit/50cf413426805d32c19c71756f601c864dd6fa7a
  Author: Shengchen Kan <shengchen.kan at intel.com>
  Date:   2024-07-31 (Wed, 31 Jul 2024)

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

  Log Message:
  -----------
  [X86,CodeGen] Return the correct condition code for SETZUCC

llvm-issue: https://github.com/llvm/llvm-project/issues/101288


  Commit: 40940980bf87832b0275dcfa91ab03738c569b18
      https://github.com/llvm/llvm-project/commit/40940980bf87832b0275dcfa91ab03738c569b18
  Author: Justin Bogner <mail at justinbogner.com>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

  Changed paths:
    M llvm/lib/Target/DirectX/DXILConstants.h
    M llvm/utils/TableGen/DXILEmitter.cpp

  Log Message:
  -----------
  [DirectX] Simplify tablegen'd OpCode and OpClass enums

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


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

  Changed paths:
    M llvm/include/llvm/MC/MCAsmBackend.h
    M llvm/include/llvm/MC/MCAssembler.h
    M llvm/include/llvm/MC/MCSection.h
    M llvm/lib/MC/MCAssembler.cpp
    M llvm/lib/MC/MCSection.cpp
    M llvm/lib/Target/Hexagon/MCTargetDesc/HexagonAsmBackend.cpp
    M llvm/lib/Target/X86/MCTargetDesc/X86AsmBackend.cpp
    M llvm/test/MC/ELF/relax-recompute-align.s

  Log Message:
  -----------
  Revert "[MC] Compute fragment offsets eagerly"

This reverts commit be5a845e4c29aadb513ae6e5e2879dccf37efdbb.

This causes large code size regressions, which were not present
in the initial version of this change.


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

  Changed paths:
    M lldb/packages/Python/lldbsuite/test/lldbtest.py
    M lldb/test/API/api/multiple-debuggers/TestMultipleDebuggers.py
    M lldb/test/API/api/multiple-debuggers/multi-process-driver.cpp

  Log Message:
  -----------
  [lldb][test] Fix TestMultipleDebuggers test on non-x86, other small issues (#101169)

This test has been flaky lately
(https://github.com/llvm/llvm-project/issues/101162) and I disabled it
everywhere initially.

I found that it always uses "x86_64" for the program architecture so the
test was "passing" elsewhere but I don't think it was meant to. So I
have added a define to pass on the host's architecture when compiling.
This makes it work on AArch64 as well.

While I'm here I've fixed the uint64_t formatting warnings by using the
defined formats that'll work everywhere.

In addition, I found that the function names include "()" on Linux, so
now we check for "foo" or "foo()".

The test cpp file has never been, or was only partially formatted so
I've not formatted the changes, just kept to the local style.

I've removed the Linux skip to see if any of this helps the timeouts,
and to verify the build command changes. If the timeouts come back I'll
disable it again.


  Commit: 996075d68357d15b9bdbbafee002e50563532cb6
      https://github.com/llvm/llvm-project/commit/996075d68357d15b9bdbbafee002e50563532cb6
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2024-07-31 (Wed, 31 Jul 2024)

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

  Log Message:
  -----------
  [clang][Interp] Handle virtual calls with covariant return types (#101218)


  Commit: 57d10b4fc9142d12fbdec578a0cc6f78deb67ef4
      https://github.com/llvm/llvm-project/commit/57d10b4fc9142d12fbdec578a0cc6f78deb67ef4
  Author: Pankaj Dwivedi <divedi.pk.117 at gmail.com>
  Date:   2024-07-31 (Wed, 31 Jul 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIRegisterInfo.cpp
    A llvm/test/CodeGen/AMDGPU/eliminate-frame-index-s-mov-b32.mir
    M llvm/test/CodeGen/AMDGPU/frame-index.mir

  Log Message:
  -----------
  [AMDGPU] Inplace FI elimination during PEI for scalar copy instruction (#99556)

eliminateFrameIndex wasn't handling the FI copy to Scalar registers and
the default implementation breaks the code while trying to handle it.
This patch handles the broken lowering and also takes care of some edge
cases that might arise. This case is tricky for non-zero offset, scc &
vcc is live and we don't find sgpr pair available.
Co-authored by @arsenm

---------
Co-authored-by: Matt Arsenault <Matthew.Arsenault at amd.com>
Co-authored-by: PankajDwivedi-25 <pankajkumar.divedi at amd.com>


  Commit: 8300eaad0f6c354f40f526f7501b624ffc389e63
      https://github.com/llvm/llvm-project/commit/8300eaad0f6c354f40f526f7501b624ffc389e63
  Author: Petr Hosek <phosek at google.com>
  Date:   2024-07-31 (Wed, 31 Jul 2024)

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

  Log Message:
  -----------
  [CMake][Fuchsia] Include libunwind and libc++abi in baremetal build (#100908)

These are needed for baremetal targets as well.


  Commit: 5ef087b705099574e131ba77143b49faaee0e7f8
      https://github.com/llvm/llvm-project/commit/5ef087b705099574e131ba77143b49faaee0e7f8
  Author: Bimo <rui.xu at intel.com>
  Date:   2024-07-31 (Wed, 31 Jul 2024)

  Changed paths:
    M mlir/python/mlir/runtime/np_to_memref.py
    M mlir/python/requirements.txt
    M mlir/test/python/execution_engine.py

  Log Message:
  -----------
  Reapply "[MLIR][Python] add ctype python binding support for bf16" (#101271)

Reapply the PR which was reverted due to built-bots, and now the bots
get updated.
https://discourse.llvm.org/t/need-a-help-with-the-built-bots/79437
original PR: https://github.com/llvm/llvm-project/pull/92489, reverted
in https://github.com/llvm/llvm-project/pull/93771


  Commit: 79996cd0c2a84fca1776d07a6fef822f424d5095
      https://github.com/llvm/llvm-project/commit/79996cd0c2a84fca1776d07a6fef822f424d5095
  Author: Carl Ritson <carl.ritson at amd.com>
  Date:   2024-07-31 (Wed, 31 Jul 2024)

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

  Log Message:
  -----------
  [AMDGPU] Pre-commit tests for #101157. NFC


  Commit: 36b2c22e07f1663d7d7388568ab979b35ecceb94
      https://github.com/llvm/llvm-project/commit/36b2c22e07f1663d7d7388568ab979b35ecceb94
  Author: Corentin Ferry <corentin.ferry at amd.com>
  Date:   2024-07-31 (Wed, 31 Jul 2024)

  Changed paths:
    M mlir/lib/Conversion/ArithToEmitC/ArithToEmitC.cpp
    M mlir/test/Conversion/ArithToEmitC/arith-to-emitc-unsupported.mlir
    M mlir/test/Conversion/ArithToEmitC/arith-to-emitc.mlir

  Log Message:
  -----------
  [mlir][emitc] Lower arith.divui, remui (#99313)

This commit lowers `arith.divui` and `arith.remui` to EmitC by wrapping
those operations with type conversions.


  Commit: f395d826bf48ba530d0ab9480e4bc07fa335ef56
      https://github.com/llvm/llvm-project/commit/f395d826bf48ba530d0ab9480e4bc07fa335ef56
  Author: WANG Rui <wangrui at loongson.cn>
  Date:   2024-07-31 (Wed, 31 Jul 2024)

  Changed paths:
    A clang/test/CodeGen/LoongArch/align.c

  Log Message:
  -----------
  [clang][LoongArch] Pre-commit test for align global. NFC


  Commit: 6434dce85df21aabd5669dd9fbe8fa582e40c6ee
      https://github.com/llvm/llvm-project/commit/6434dce85df21aabd5669dd9fbe8fa582e40c6ee
  Author: yronglin <yronglin777 at gmail.com>
  Date:   2024-07-31 (Wed, 31 Jul 2024)

  Changed paths:
    M clang/lib/AST/Interp/EvaluationResult.cpp
    M clang/test/AST/Interp/constexpr-subobj-initialization.cpp
    M clang/test/C/C23/n3018.c
    M clang/test/CodeGen/pr3518.c
    M clang/test/Preprocessor/embed_weird.cpp
    M clang/test/SemaCXX/constexpr-subobj-initialization.cpp

  Log Message:
  -----------
  [Clang][Interp] Fix the location of uninitialized base warning (#100761)

Fix the location of `diag::note_constexpr_uninitialized_base`, make it
same as current interpreter.
This PR does not print type name with namespacethat was used to improve
the current interpreter's type dump of base class type.

---------

Signed-off-by: yronglin <yronglin777 at gmail.com>


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

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

  Log Message:
  -----------
  [AMDGPU] Regenerate vselect.ll


  Commit: b3b46963b772fcbc80cb2df0b7389c09830cf166
      https://github.com/llvm/llvm-project/commit/b3b46963b772fcbc80cb2df0b7389c09830cf166
  Author: Sergio Afonso <safonsof at amd.com>
  Date:   2024-07-31 (Wed, 31 Jul 2024)

  Changed paths:
    M flang/test/Lower/OpenMP/task.f90
    M mlir/include/mlir/Dialect/OpenMP/OpenMPOps.td
    M mlir/lib/Conversion/SCFToOpenMP/SCFToOpenMP.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:
  -----------
  [MLIR][OpenMP] NFC: Sort clauses alphabetically (1/2) (#101193)

This patch sorts the clause lists for the following OpenMP operations:
- omp.parallel
- omp.teams
- omp.sections
- omp.wsloop
- omp.distribute
- omp.task

This change results in the reordering of operation arguments, so
impacted unit tests are updated accordingly.


  Commit: a3800a60ed95a6b1e808ebd3a34e2dc1c0c04185
      https://github.com/llvm/llvm-project/commit/a3800a60ed95a6b1e808ebd3a34e2dc1c0c04185
  Author: Sergio Afonso <safonsof at amd.com>
  Date:   2024-07-31 (Wed, 31 Jul 2024)

  Changed paths:
    M flang/test/Fir/convert-to-llvm-openmp-and-fir.fir
    M flang/test/Lower/OpenMP/target.f90
    M flang/test/Lower/OpenMP/use-device-ptr-to-use-device-addr.f90
    M mlir/include/mlir/Dialect/OpenMP/OpenMPOps.td
    M mlir/lib/Dialect/OpenMP/IR/OpenMPDialect.cpp
    M mlir/test/Conversion/OpenMPToLLVM/convert-to-llvmir.mlir
    M mlir/test/Dialect/OpenMP/invalid.mlir
    M mlir/test/Dialect/OpenMP/ops.mlir

  Log Message:
  -----------
  [MLIR][OpenMP] NFC: Sort clauses alphabetically (2/2) (#101194)

This patch sorts the clause lists for the following OpenMP operations:
- omp.taskloop
- omp.taskgroup
- omp.target_data
- omp.target_enter_data
- omp.target_exit_data
- omp.target_update
- omp.target

This change results in the reordering of operation arguments, so
impacted unit tests are updated accordingly.


  Commit: 5c406eacf4f4dda0cf9267d638954aa20f17e118
      https://github.com/llvm/llvm-project/commit/5c406eacf4f4dda0cf9267d638954aa20f17e118
  Author: OverMighty <its.overmighty at gmail.com>
  Date:   2024-07-31 (Wed, 31 Jul 2024)

  Changed paths:
    M libc/src/__support/FPUtil/BasicOperations.h
    M libc/src/__support/FPUtil/CMakeLists.txt

  Log Message:
  -----------
  [libc][math][c23] Fix totalorderf128 requiring support for 128-bit ints (#101229)


  Commit: dae7fb8c42877b16be2064bf3043841b13583a3a
      https://github.com/llvm/llvm-project/commit/dae7fb8c42877b16be2064bf3043841b13583a3a
  Author: Ruiling, Song <ruiling.song at amd.com>
  Date:   2024-07-31 (Wed, 31 Jul 2024)

  Changed paths:
    M llvm/test/CodeGen/AMDGPU/while-break.ll

  Log Message:
  -----------
  [AMDGPU,test] Add one more while-break case (#101300)

which suffers from v_mov issue.


  Commit: 22ce33304ef9af9e773ac606670ed93944da2c65
      https://github.com/llvm/llvm-project/commit/22ce33304ef9af9e773ac606670ed93944da2c65
  Author: Michael Maitland <michaeltmaitland at gmail.com>
  Date:   2024-07-31 (Wed, 31 Jul 2024)

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

  Log Message:
  -----------
  Revert "[DAG][NFC] Use SDPatternMatch for VScale in some instances"

This reverts commit d2304427cb0270259bc083a3db27413823f56e59.

The m_Add and m_Mul are commutative but the code does not expect the
communtativity.


  Commit: 4c670b266a10d613a58b71cc9c3d3a21cb6dc36b
      https://github.com/llvm/llvm-project/commit/4c670b266a10d613a58b71cc9c3d3a21cb6dc36b
  Author: Jannick Kremer <51118500+DeinAlptraum at users.noreply.github.com>
  Date:   2024-07-31 (Wed, 31 Jul 2024)

  Changed paths:
    M clang/bindings/python/clang/cindex.py

  Log Message:
  -----------
  [libclang/python] Factor out unsaved files processing (#101308)

Factor out the processing of unsaved files into its own function as
suggested by @Endilll
[here](https://github.com/llvm/llvm-project/pull/78114/files#r1697730196)


  Commit: 55255669077b191043b1a8920107890815151835
      https://github.com/llvm/llvm-project/commit/55255669077b191043b1a8920107890815151835
  Author: Jannick Kremer <51118500+DeinAlptraum at users.noreply.github.com>
  Date:   2024-07-31 (Wed, 31 Jul 2024)

  Changed paths:
    M clang/bindings/python/clang/cindex.py

  Log Message:
  -----------
  [libclang/python] type-ignore `Any` returns from library calls (#101310)

On its own, this change leads to _more_ strict typing errors as the
functions are mostly not annotated so far, so the `# type: ignore`s are
reported as Unused. This is part of the work leading up to #78114
though, and one of the bigger parts factored out from it, so these will
later lead to less strict typing errors as the functions are annotated
with return types.


  Commit: d8b985c9490664f7ec923e59cf6c603d998179ae
      https://github.com/llvm/llvm-project/commit/d8b985c9490664f7ec923e59cf6c603d998179ae
  Author: Andrey Timonin <112198242+EtoAndruwa at users.noreply.github.com>
  Date:   2024-07-31 (Wed, 31 Jul 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/ControlFlow/IR/ControlFlowOps.td

  Log Message:
  -----------
  [mlir][cf] fix 'switch', 'assert' and 'cond_br' operations' description (#101319)


  Commit: 29ef92b9051bca3a35be0cbc5e03d787941f945e
      https://github.com/llvm/llvm-project/commit/29ef92b9051bca3a35be0cbc5e03d787941f945e
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-07-31 (Wed, 31 Jul 2024)

  Changed paths:
    A libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.shared_mutex.requirements/thread.shared_mutex.class/assign.compile.pass.cpp
    R libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.shared_mutex.requirements/thread.shared_mutex.class/assign.verify.cpp
    R libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.shared_mutex.requirements/thread.shared_mutex.class/copy.verify.cpp
    A libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.shared_mutex.requirements/thread.shared_mutex.class/ctor.copy.compile.pass.cpp
    A libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.shared_mutex.requirements/thread.shared_mutex.class/ctor.default.pass.cpp
    R libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.shared_mutex.requirements/thread.shared_mutex.class/default.pass.cpp
    M libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.shared_mutex.requirements/thread.shared_mutex.class/lock.pass.cpp
    M libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.shared_mutex.requirements/thread.shared_mutex.class/lock_shared.pass.cpp
    M libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.shared_mutex.requirements/thread.shared_mutex.class/try_lock.pass.cpp
    M libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.shared_mutex.requirements/thread.shared_mutex.class/try_lock_shared.pass.cpp
    R libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/assign.compile.fail.cpp
    A libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/assign.compile.pass.cpp
    R libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/copy.compile.fail.cpp
    A libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/ctor.copy.compile.pass.cpp
    A libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/ctor.default.pass.cpp
    R libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/default.pass.cpp
    M libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/lock.pass.cpp
    M libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/lock_shared.pass.cpp
    M libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/try_lock.pass.cpp
    M libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/try_lock_for.pass.cpp
    M libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/try_lock_shared.pass.cpp
    M libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/try_lock_shared_for.pass.cpp
    M libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/try_lock_shared_until.pass.cpp
    M libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/try_lock_until.pass.cpp

  Log Message:
  -----------
  [libc++] Refactor tests for shared_mutex and shared_timed_mutex (#100783)

This makes the tests less flaky and also makes a few other refactorings
like using traits instead of .compile.fail.cpp tests.


  Commit: 569d8ce11f25aeb1596bd791905b16e73359470e
      https://github.com/llvm/llvm-project/commit/569d8ce11f25aeb1596bd791905b16e73359470e
  Author: A. Jiang <de34 at live.cn>
  Date:   2024-07-31 (Wed, 31 Jul 2024)

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

  Log Message:
  -----------
  [libc++][docs] Remove misadded entry for P1937R2 from Cxx20Papers.csv (#100741)

P1937R2 only contains core language change and doesn't touch the library
at all.

Closes #100613.


  Commit: 93fecc2577ece0329f3bbe2719bbc5b4b9b30010
      https://github.com/llvm/llvm-project/commit/93fecc2577ece0329f3bbe2719bbc5b4b9b30010
  Author: Dmitry Vasilyev <dvassiliev at accesssoftek.com>
  Date:   2024-07-31 (Wed, 31 Jul 2024)

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

  Log Message:
  -----------
  [lldb] Fixed lldb-server crash (TestLogHandler was not thread safe) (#101326)

Host::LaunchProcess() requires to SetMonitorProcessCallback. This
callback is called from the child process monitor thread. We cannot
control this thread anyway. lldb-server may crash if there is a logging
around this callback because TestLogHandler is not thread safe. I faced
this issue debugging 100 simultaneous child processes. Note
StreamLogHandler::Emit() in lldb/source/Utility/Log.cpp already contains
the similar mutex.


  Commit: 05c3a4b8f99d13df4249e9486d8aa42a37957685
      https://github.com/llvm/llvm-project/commit/05c3a4b8f99d13df4249e9486d8aa42a37957685
  Author: Sameer Sahasrabuddhe <sameer.sahasrabuddhe at amd.com>
  Date:   2024-07-31 (Wed, 31 Jul 2024)

  Changed paths:
    M llvm/include/llvm/ADT/GenericCycleImpl.h
    A llvm/test/Analysis/CycleInfo/unreachable-predecessor.ll

  Log Message:
  -----------
  [CycleInfo] skip unreachable predecessors (#101316)

If an unreachable block B branches to a block S inside a cycle, it may
cause S to be incorrectly treated as an entry to the cycle. We avoid
that by skipping unreachable predecessors when locating entries.


  Commit: 9b017db6be8213a989517b494b56fc711af8bf8c
      https://github.com/llvm/llvm-project/commit/9b017db6be8213a989517b494b56fc711af8bf8c
  Author: Petr Hosek <phosek at google.com>
  Date:   2024-07-31 (Wed, 31 Jul 2024)

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

  Log Message:
  -----------
  Revert "[CMake][Fuchsia] Include libunwind and libc++abi in baremetal build" (#101340)

Reverts llvm/llvm-project#100908


  Commit: 89946bda5e1c7ceaf6d26634cc8c8c9498d9f7be
      https://github.com/llvm/llvm-project/commit/89946bda5e1c7ceaf6d26634cc8c8c9498d9f7be
  Author: h-vetinari <h.vetinari at gmx.com>
  Date:   2024-07-31 (Wed, 31 Jul 2024)

  Changed paths:
    M clang/tools/clang-repl/CMakeLists.txt
    M clang/tools/driver/CMakeLists.txt
    M cmake/Modules/LLVMCheckCompilerLinkerFlag.cmake
    M compiler-rt/cmake/config-ix.cmake
    M libcxx/cmake/config-ix.cmake
    M llvm/cmake/modules/AddLLVM.cmake
    M llvm/cmake/modules/HandleLLVMOptions.cmake
    M llvm/cmake/modules/HandleLLVMStdlib.cmake
    R llvm/cmake/modules/LLVMCheckLinkerFlag.cmake

  Log Message:
  -----------
  [cmake] switch to CMake's native `check_{compiler,linker}_flag` (#96171)

Broken out from #93429

Somewhat closing the loop opened by 7017e6c9cfd2de.

Co-authored-by: Ryan Prichard <rprichard at google.com>


  Commit: 5b6b48800e625965064c2fd54efb976e0672455c
      https://github.com/llvm/llvm-project/commit/5b6b48800e625965064c2fd54efb976e0672455c
  Author: Hewill Kang <hewillk at gmail.com>
  Date:   2024-07-31 (Wed, 31 Jul 2024)

  Changed paths:
    M libcxx/include/__algorithm/find_end.h

  Log Message:
  -----------
  [libc++][NFC] Remove two unused implementation details `__find_end` (#100685)

Those two `__find_end` functions are no longer used after 101d1e9b3c86.
After that commit, `std::find_end` started dispatching to `__find_end_classic`,
and `ranges::find_end` to `__find_end_impl`, which means that the two `__find_end`
functions were no longer necessary.

Fixes #100569


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

  Changed paths:
    M libcxx/test/std/algorithms/alg.sorting/alg.sort/sort/sort.pass.cpp

  Log Message:
  -----------
  [libcxx][test] Mark sort.pass.cpp as a long test (#100720)

Picolib testing skips any test requiring this feature, I just didn't
know the feature existed until now.


  Commit: 23d188ed91ed39879e6f6e36d07eca6ceae4bab5
      https://github.com/llvm/llvm-project/commit/23d188ed91ed39879e6f6e36d07eca6ceae4bab5
  Author: David Spickett <david.spickett at linaro.org>
  Date:   2024-07-31 (Wed, 31 Jul 2024)

  Changed paths:
    M libcxx/test/std/numerics/rand/rand.dist/rand.dist.bern/rand.dist.bern.bin/eval.PR44847.pass.cpp

  Log Message:
  -----------
  [libcxx][test] Require long_tests for eval.PR44847.pass.cp (#100722)

This takes 1m40s to run when testing picolib on qemu. This isn't the end
of the world but that's on an AArch64 server. So if someone felt the
need to mark this unsupported in the first place, it's likely much
slower on average hardware.


  Commit: 7ab643383fe49d5bb22e45610cb52476bf7a922e
      https://github.com/llvm/llvm-project/commit/7ab643383fe49d5bb22e45610cb52476bf7a922e
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-07-31 (Wed, 31 Jul 2024)

  Changed paths:
    M clang/tools/libclang/CMakeLists.txt

  Log Message:
  -----------
  [libclang] Use check_linker_flag instead of llvm_check_linker_flag

Follow-up to #96171 in an attempt to fix the Solaris bots.


  Commit: b5a7d3b6c2169d84f9da749425a38dcef914d1ce
      https://github.com/llvm/llvm-project/commit/b5a7d3b6c2169d84f9da749425a38dcef914d1ce
  Author: Han-Kuan Chen <hankuan.chen at sifive.com>
  Date:   2024-07-31 (Wed, 31 Jul 2024)

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

  Log Message:
  -----------
  [SLP][REVEC] Make Instruction::Select support vector instructions. (#100507)


  Commit: e9d5842ac7bd8d9b5700dc415910425ca796f4c1
      https://github.com/llvm/llvm-project/commit/e9d5842ac7bd8d9b5700dc415910425ca796f4c1
  Author: Paul Kirth <paulkirth at google.com>
  Date:   2024-07-31 (Wed, 31 Jul 2024)

  Changed paths:
    M libcxx/include/__mutex/unique_lock.h
    M libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/implicit_ctad.pass.cpp
    R libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.cons/copy_assign.compile.fail.cpp
    A libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.cons/copy_assign.compile.pass.cpp
    R libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.cons/copy_ctor.compile.fail.cpp
    A libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.cons/copy_ctor.compile.pass.cpp
    M libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.cons/default.pass.cpp
    M libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.cons/move_assign.pass.cpp
    M libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.cons/move_ctor.pass.cpp
    M libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.cons/mutex_adopt_lock.pass.cpp
    M libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.cons/mutex_defer_lock.pass.cpp
    M libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.locking/lock.pass.cpp
    M libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.locking/try_lock.pass.cpp
    M libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.locking/try_lock_for.pass.cpp
    M libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.locking/try_lock_until.pass.cpp
    M libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.locking/unlock.pass.cpp
    M libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.mod/member_swap.pass.cpp
    M libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.mod/nonmember_swap.pass.cpp
    M libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.mod/release.pass.cpp
    M libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.obs/mutex.pass.cpp
    M libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.obs/op_bool.pass.cpp
    M libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.obs/owns_lock.pass.cpp
    A libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/types.compile.pass.cpp
    A libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/types.h
    R libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/types.pass.cpp

  Log Message:
  -----------
  [libc++] Make std::unique_lock available with _LIBCPP_HAS_NO_THREADS (#99562)

This is a follow up to https://github.com/llvm/llvm-project/pull/98717,
which made lock_guard available under _LIBCPP_HAS_NO_THREADS. We can
make unique_lock available under similar circumstances. This patch
follows the example in #98717, by:

  - Removing the preprocessor guards for _LIBCPP_HAS_NO_THREADS in the
    unique_lock header.
  - providing a set of custom mutex implementations in a local header.
  - using custom locks in tests that can be made to work under
    `no-threads`.


  Commit: 78b4b5cccbd92363708906d9171e21b0307b91a2
      https://github.com/llvm/llvm-project/commit/78b4b5cccbd92363708906d9171e21b0307b91a2
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-07-31 (Wed, 31 Jul 2024)

  Changed paths:
    M libcxx/CMakeLists.txt
    R libcxx/benchmarks/CMakeLists.txt
    R libcxx/benchmarks/CartesianBenchmarks.h
    R libcxx/benchmarks/ContainerBenchmarks.h
    R libcxx/benchmarks/GenerateInput.h
    R libcxx/benchmarks/Utilities.h
    R libcxx/benchmarks/VariantBenchmarks.h
    R libcxx/benchmarks/algorithms.partition_point.bench.cpp
    R libcxx/benchmarks/algorithms/common.h
    R libcxx/benchmarks/algorithms/count.bench.cpp
    R libcxx/benchmarks/algorithms/equal.bench.cpp
    R libcxx/benchmarks/algorithms/fill.bench.cpp
    R libcxx/benchmarks/algorithms/find.bench.cpp
    R libcxx/benchmarks/algorithms/for_each.bench.cpp
    R libcxx/benchmarks/algorithms/lower_bound.bench.cpp
    R libcxx/benchmarks/algorithms/make_heap.bench.cpp
    R libcxx/benchmarks/algorithms/make_heap_then_sort_heap.bench.cpp
    R libcxx/benchmarks/algorithms/min.bench.cpp
    R libcxx/benchmarks/algorithms/min_max_element.bench.cpp
    R libcxx/benchmarks/algorithms/minmax.bench.cpp
    R libcxx/benchmarks/algorithms/mismatch.bench.cpp
    R libcxx/benchmarks/algorithms/pop_heap.bench.cpp
    R libcxx/benchmarks/algorithms/pstl.stable_sort.bench.cpp
    R libcxx/benchmarks/algorithms/push_heap.bench.cpp
    R libcxx/benchmarks/algorithms/ranges_contains.bench.cpp
    R libcxx/benchmarks/algorithms/ranges_ends_with.bench.cpp
    R libcxx/benchmarks/algorithms/ranges_make_heap.bench.cpp
    R libcxx/benchmarks/algorithms/ranges_make_heap_then_sort_heap.bench.cpp
    R libcxx/benchmarks/algorithms/ranges_pop_heap.bench.cpp
    R libcxx/benchmarks/algorithms/ranges_push_heap.bench.cpp
    R libcxx/benchmarks/algorithms/ranges_sort.bench.cpp
    R libcxx/benchmarks/algorithms/ranges_sort_heap.bench.cpp
    R libcxx/benchmarks/algorithms/ranges_stable_sort.bench.cpp
    R libcxx/benchmarks/algorithms/set_intersection.bench.cpp
    R libcxx/benchmarks/algorithms/sort.bench.cpp
    R libcxx/benchmarks/algorithms/sort_heap.bench.cpp
    R libcxx/benchmarks/algorithms/stable_sort.bench.cpp
    R libcxx/benchmarks/allocation.bench.cpp
    R libcxx/benchmarks/atomic_wait.bench.cpp
    R libcxx/benchmarks/atomic_wait_vs_mutex_lock.bench.cpp
    R libcxx/benchmarks/deque.bench.cpp
    R libcxx/benchmarks/deque_iterator.bench.cpp
    R libcxx/benchmarks/exception_ptr.bench.cpp
    R libcxx/benchmarks/filesystem.bench.cpp
    R libcxx/benchmarks/format.bench.cpp
    R libcxx/benchmarks/format_to.bench.cpp
    R libcxx/benchmarks/format_to_n.bench.cpp
    R libcxx/benchmarks/formatted_size.bench.cpp
    R libcxx/benchmarks/formatter_float.bench.cpp
    R libcxx/benchmarks/formatter_int.bench.cpp
    R libcxx/benchmarks/function.bench.cpp
    R libcxx/benchmarks/join_view.bench.cpp
    R libcxx/benchmarks/lexicographical_compare_three_way.bench.cpp
    R libcxx/benchmarks/libcxxabi/dynamic_cast.bench.cpp
    R libcxx/benchmarks/libcxxabi/dynamic_cast_old_stress.bench.cpp
    R libcxx/benchmarks/lit.cfg.py
    R libcxx/benchmarks/lit.site.cfg.py.in
    R libcxx/benchmarks/map.bench.cpp
    R libcxx/benchmarks/monotonic_buffer.bench.cpp
    R libcxx/benchmarks/numeric/gcd.bench.cpp
    R libcxx/benchmarks/ordered_set.bench.cpp
    R libcxx/benchmarks/random.bench.cpp
    R libcxx/benchmarks/shared_mutex_vs_mutex.bench.cpp
    R libcxx/benchmarks/std_format_spec_string_unicode.bench.cpp
    R libcxx/benchmarks/std_format_spec_string_unicode_escape.bench.cpp
    R libcxx/benchmarks/stop_token.bench.cpp
    R libcxx/benchmarks/string.bench.cpp
    R libcxx/benchmarks/stringstream.bench.cpp
    R libcxx/benchmarks/system_error.bench.cpp
    R libcxx/benchmarks/to_chars.bench.cpp
    R libcxx/benchmarks/unordered_set_operations.bench.cpp
    R libcxx/benchmarks/util_smartptr.bench.cpp
    R libcxx/benchmarks/variant_visit_1.bench.cpp
    R libcxx/benchmarks/variant_visit_2.bench.cpp
    R libcxx/benchmarks/variant_visit_3.bench.cpp
    R libcxx/benchmarks/vector_operations.bench.cpp
    M libcxx/docs/TestingLibcxx.rst
    M libcxx/test/CMakeLists.txt
    A libcxx/test/benchmarks/CMakeLists.txt
    A libcxx/test/benchmarks/CartesianBenchmarks.h
    A libcxx/test/benchmarks/ContainerBenchmarks.h
    A libcxx/test/benchmarks/GenerateInput.h
    A libcxx/test/benchmarks/Utilities.h
    A libcxx/test/benchmarks/VariantBenchmarks.h
    A libcxx/test/benchmarks/algorithms.partition_point.bench.cpp
    A libcxx/test/benchmarks/algorithms/common.h
    A libcxx/test/benchmarks/algorithms/count.bench.cpp
    A libcxx/test/benchmarks/algorithms/equal.bench.cpp
    A libcxx/test/benchmarks/algorithms/fill.bench.cpp
    A libcxx/test/benchmarks/algorithms/find.bench.cpp
    A libcxx/test/benchmarks/algorithms/for_each.bench.cpp
    A libcxx/test/benchmarks/algorithms/lower_bound.bench.cpp
    A libcxx/test/benchmarks/algorithms/make_heap.bench.cpp
    A libcxx/test/benchmarks/algorithms/make_heap_then_sort_heap.bench.cpp
    A libcxx/test/benchmarks/algorithms/min.bench.cpp
    A libcxx/test/benchmarks/algorithms/min_max_element.bench.cpp
    A libcxx/test/benchmarks/algorithms/minmax.bench.cpp
    A libcxx/test/benchmarks/algorithms/mismatch.bench.cpp
    A libcxx/test/benchmarks/algorithms/pop_heap.bench.cpp
    A libcxx/test/benchmarks/algorithms/pstl.stable_sort.bench.cpp
    A libcxx/test/benchmarks/algorithms/push_heap.bench.cpp
    A libcxx/test/benchmarks/algorithms/ranges_contains.bench.cpp
    A libcxx/test/benchmarks/algorithms/ranges_ends_with.bench.cpp
    A libcxx/test/benchmarks/algorithms/ranges_make_heap.bench.cpp
    A libcxx/test/benchmarks/algorithms/ranges_make_heap_then_sort_heap.bench.cpp
    A libcxx/test/benchmarks/algorithms/ranges_pop_heap.bench.cpp
    A libcxx/test/benchmarks/algorithms/ranges_push_heap.bench.cpp
    A libcxx/test/benchmarks/algorithms/ranges_sort.bench.cpp
    A libcxx/test/benchmarks/algorithms/ranges_sort_heap.bench.cpp
    A libcxx/test/benchmarks/algorithms/ranges_stable_sort.bench.cpp
    A libcxx/test/benchmarks/algorithms/set_intersection.bench.cpp
    A libcxx/test/benchmarks/algorithms/sort.bench.cpp
    A libcxx/test/benchmarks/algorithms/sort_heap.bench.cpp
    A libcxx/test/benchmarks/algorithms/stable_sort.bench.cpp
    A libcxx/test/benchmarks/allocation.bench.cpp
    A libcxx/test/benchmarks/atomic_wait.bench.cpp
    A libcxx/test/benchmarks/atomic_wait_vs_mutex_lock.bench.cpp
    A libcxx/test/benchmarks/deque.bench.cpp
    A libcxx/test/benchmarks/deque_iterator.bench.cpp
    A libcxx/test/benchmarks/exception_ptr.bench.cpp
    A libcxx/test/benchmarks/filesystem.bench.cpp
    A libcxx/test/benchmarks/format.bench.cpp
    A libcxx/test/benchmarks/format_to.bench.cpp
    A libcxx/test/benchmarks/format_to_n.bench.cpp
    A libcxx/test/benchmarks/formatted_size.bench.cpp
    A libcxx/test/benchmarks/formatter_float.bench.cpp
    A libcxx/test/benchmarks/formatter_int.bench.cpp
    A libcxx/test/benchmarks/function.bench.cpp
    A libcxx/test/benchmarks/join_view.bench.cpp
    A libcxx/test/benchmarks/lexicographical_compare_three_way.bench.cpp
    A libcxx/test/benchmarks/libcxxabi/dynamic_cast.bench.cpp
    A libcxx/test/benchmarks/libcxxabi/dynamic_cast_old_stress.bench.cpp
    A libcxx/test/benchmarks/lit.cfg.py.in
    A libcxx/test/benchmarks/lit.site.cfg.py.in
    A libcxx/test/benchmarks/map.bench.cpp
    A libcxx/test/benchmarks/monotonic_buffer.bench.cpp
    A libcxx/test/benchmarks/numeric/gcd.bench.cpp
    A libcxx/test/benchmarks/ordered_set.bench.cpp
    A libcxx/test/benchmarks/random.bench.cpp
    A libcxx/test/benchmarks/shared_mutex_vs_mutex.bench.cpp
    A libcxx/test/benchmarks/std_format_spec_string_unicode.bench.cpp
    A libcxx/test/benchmarks/std_format_spec_string_unicode_escape.bench.cpp
    A libcxx/test/benchmarks/stop_token.bench.cpp
    A libcxx/test/benchmarks/string.bench.cpp
    A libcxx/test/benchmarks/stringstream.bench.cpp
    A libcxx/test/benchmarks/system_error.bench.cpp
    A libcxx/test/benchmarks/to_chars.bench.cpp
    A libcxx/test/benchmarks/unordered_set_operations.bench.cpp
    A libcxx/test/benchmarks/util_smartptr.bench.cpp
    A libcxx/test/benchmarks/variant_visit_1.bench.cpp
    A libcxx/test/benchmarks/variant_visit_2.bench.cpp
    A libcxx/test/benchmarks/variant_visit_3.bench.cpp
    A libcxx/test/benchmarks/vector_operations.bench.cpp

  Log Message:
  -----------
  [libc++] Move the benchmarks under libcxx/test (#99371)

This is an intermediate and fairly mechanical step towards unifying the
benchmarks with the rest of the test suite. Moving this around requires
a few changes, notably making sure we don't throw a wrench into the
discovery process of the normal test suite. This won't be a problem
anymore once benchmarks are taken into account by the test setup out of
the box.


  Commit: fa842970027b6d2f0160ad42fa82a872bf8d8600
      https://github.com/llvm/llvm-project/commit/fa842970027b6d2f0160ad42fa82a872bf8d8600
  Author: darkbuck <michael.hliao at gmail.com>
  Date:   2024-07-31 (Wed, 31 Jul 2024)

  Changed paths:
    M clang/include/clang/Basic/Attr.td
    M clang/include/clang/Basic/AttrDocs.td
    M clang/lib/CodeGen/CGCall.cpp
    M clang/lib/CodeGen/CGStmt.cpp
    M clang/lib/CodeGen/CodeGenFunction.h
    M clang/lib/Sema/SemaStmtAttr.cpp
    M clang/test/CodeGenCUDA/convergent.cu
    M clang/test/Misc/pragma-attribute-supported-attributes-list.test
    A clang/test/SemaCUDA/attr-noconvergent.cu

  Log Message:
  -----------
  [clang][CUDA] Add 'noconvergent' function and statement attribute

- For languages following SPMD/SIMT programming model, functions and
  call sites are marked 'convergent' by default. 'noconvergent' is added
  in this patch to allow developers to remove that 'convergent'
  attribute when it's safe.

Reviewers:
nhaehnle, Sirraide, yxsamliu, Artem-B, ilovepi, jayfoad, ssahasra, arsenm

Reviewed By: arsenm

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


  Commit: 2a6268d8f999d56a557079e7fd8ee8c4a4e9ac0c
      https://github.com/llvm/llvm-project/commit/2a6268d8f999d56a557079e7fd8ee8c4a4e9ac0c
  Author: Simon Tatham <simon.tatham at arm.com>
  Date:   2024-07-31 (Wed, 31 Jul 2024)

  Changed paths:
    M libc/config/config.json
    M libc/config/linux/aarch64/entrypoints.txt
    M libc/docs/configure.rst
    M libc/include/llvm-libc-types/jmp_buf.h
    A libc/src/setjmp/aarch64/CMakeLists.txt
    A libc/src/setjmp/aarch64/longjmp.cpp
    A libc/src/setjmp/aarch64/setjmp.cpp

  Log Message:
  -----------
  [libc][AArch64] Add an AArch64 setjmp/longjmp. (#101177)

Previously, building libc for AArch64 in `LLVM_LIBC_FULL_BUILD` mode
would fail because no implementation of setjmp/longjmp was available.
This was the only obstacle, so now a full AArch64 build of libc is
possible.

This implementation automatically supports PAC and BTI if compiled with
the appropriate options. I would have liked to do the same for MTE stack
tagging, but as far as I can see there's currently no predefined macro
that allows detection of `-fsanitize=memtag-stack`, so I've left that
one as a TODO.

AAPCS64 delegates the x18 register to individual platform ABIs, and
allows them to choose what it's used for, which may or may not require
setjmp and longjmp to save and restore it. To accommodate this, I've
introduced a libc configuration option. The default is on, because the
only use of x18 I've so far encountered uses it to store information
specific to the current stack frame (so longjmp does need to restore
it), and this is also safe behavior in the default situation where the
platform ABI specifies no use of x18 and it becomes a temporary register
(restoring it to its previous value is no worse than any _other_ way for
a function call to clobber it). But if a platform ABI needs to use x18
in a way that requires longjmp to leave it alone, they can turn the
option off.


  Commit: 8b2688bd173e79392927bcaed91855e7c4db8eaa
      https://github.com/llvm/llvm-project/commit/8b2688bd173e79392927bcaed91855e7c4db8eaa
  Author: Joshua Baehring <98630690+JoshuaMBa at users.noreply.github.com>
  Date:   2024-07-31 (Wed, 31 Jul 2024)

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

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

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 are 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, valid-fit, committed entries (not necessarily optimal-fit)
are retrieved before optimal-fit, decommitted entries.


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

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineCasts.cpp
    M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-pow-codegen.ll
    M llvm/test/CodeGen/AMDGPU/simplify-libcalls.ll
    M llvm/test/Transforms/InstCombine/bitcast.ll

  Log Message:
  -----------
  [InstCombine] Recognize copysign idioms (#101324)

This patch folds `(bitcast (or (and (bitcast X to int), signmask), nneg
Y) to fp)` into `copysign((bitcast Y to fp), X)`. I found this pattern
exists in some graphics applications/math libraries.

Alive2: https://alive2.llvm.org/ce/z/ggQZV2


  Commit: d36c9f828d795d77127ea0fada6be4b7b5e19dbb
      https://github.com/llvm/llvm-project/commit/d36c9f828d795d77127ea0fada6be4b7b5e19dbb
  Author: vporpo <vporpodas at google.com>
  Date:   2024-07-31 (Wed, 31 Jul 2024)

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

  Log Message:
  -----------
  [SandboxIR] Implement AddrSpaceCastInst (#101260)

This patch implements sandboxir::AddrSpaceCastInst which mirrors
llvm::AddrSpaceCastInst.


  Commit: 3715035797a8b07ddaf2e2eff08fedc535891e15
      https://github.com/llvm/llvm-project/commit/3715035797a8b07ddaf2e2eff08fedc535891e15
  Author: Schrodinger ZHU Yifan <yifanzhu at rochester.edu>
  Date:   2024-07-31 (Wed, 31 Jul 2024)

  Changed paths:
    M libc/src/setjmp/aarch64/longjmp.cpp
    M libc/src/setjmp/aarch64/setjmp.cpp

  Log Message:
  -----------
  [libc] quick fix for aarch64 jmpbuf build (#101357)


  Commit: 45ef0d492f7b61613d0833fbf7eafdd41e137139
      https://github.com/llvm/llvm-project/commit/45ef0d492f7b61613d0833fbf7eafdd41e137139
  Author: David Blaikie <dblaikie at gmail.com>
  Date:   2024-07-31 (Wed, 31 Jul 2024)

  Changed paths:
    M llvm/include/llvm-c/Error.h
    M llvm/lib/Support/Error.cpp
    M llvm/unittests/Support/ErrorTest.cpp

  Log Message:
  -----------
  Add llvm::Error C API, LLVMCantFail

It's barely testable - the test does exercise the code, but wouldn't
fail on an empty implementation. It would cause a memory leak though
(because the error handle wouldn't be unwrapped/reowned) which could be
detected by asan and other leak detectors.


  Commit: f0197a75e83d45514201432999616267ae0954e2
      https://github.com/llvm/llvm-project/commit/f0197a75e83d45514201432999616267ae0954e2
  Author: vporpo <vporpodas at google.com>
  Date:   2024-07-31 (Wed, 31 Jul 2024)

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

  Log Message:
  -----------
  [SandboxIR] Implement IntToPtrInst (#101359)

This patch implements sandboxir::IntToPtrInst which mirrors
llvm::IntToPtrInst.


  Commit: faf3333510e0c2c3f319af40456e10c471e11ce8
      https://github.com/llvm/llvm-project/commit/faf3333510e0c2c3f319af40456e10c471e11ce8
  Author: Philip Reames <preames at rivosinc.com>
  Date:   2024-07-31 (Wed, 31 Jul 2024)

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

  Log Message:
  -----------
  [SCEV] Add coverage for flag inference with vscale strided IVs

Given vscale is a power of two, we should be able to prove no-self-wrap
in these cases.  We currently don't, but an upcoming change will fix this.


  Commit: 8398ad9cb21736dc57ee4dd766bd0859ef9bd000
      https://github.com/llvm/llvm-project/commit/8398ad9cb21736dc57ee4dd766bd0859ef9bd000
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2024-07-31 (Wed, 31 Jul 2024)

  Changed paths:
    M lldb/include/lldb/Interpreter/CommandObject.h
    M lldb/source/Commands/CommandObjectBreakpoint.cpp
    M lldb/source/Commands/CommandObjectBreakpointCommand.cpp
    M lldb/source/Commands/CommandObjectDisassemble.cpp
    M lldb/source/Commands/CommandObjectExpression.cpp
    M lldb/source/Commands/CommandObjectFrame.cpp
    M lldb/source/Commands/CommandObjectProcess.cpp
    M lldb/source/Commands/CommandObjectTarget.cpp
    M lldb/source/Commands/CommandObjectThread.cpp
    M lldb/source/Commands/CommandObjectWatchpoint.cpp
    M lldb/source/Commands/CommandObjectWatchpointCommand.cpp
    M lldb/source/Interpreter/CommandObject.cpp
    M lldb/source/Plugins/StructuredData/DarwinLog/StructuredDataDarwinLog.cpp

  Log Message:
  -----------
  [lldb] Unify the way we get the Target in CommandObject (#101208)

Currently, CommandObjects are obtaining a target in a variety of ways.
Often the command incorrectly operates on the selected target. As an
example, when a breakpoint command is running, the current target is
passed into the command but the target that hit the breakpoint is not
the selected target. In other places we use the CommandObject's
execution context, which is frozen during the execution of the command,
and comes with its own limitations. Finally, we often want to fall back
to the dummy target if no real target is available.

Instead of having to guess how to get the target, this patch introduces
one helper function in CommandObject to get the most relevant target. In
order of priority, that's the target from the command object's execution
context, from the interpreter's execution context, the selected target
or the dummy target.

rdar://110846511


  Commit: 6a54dfbfe534276d644d7f9c027f0deeb748dd53
      https://github.com/llvm/llvm-project/commit/6a54dfbfe534276d644d7f9c027f0deeb748dd53
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-07-31 (Wed, 31 Jul 2024)

  Changed paths:
    M libcxx/test/benchmarks/GenerateInput.h
    M libcxx/test/benchmarks/algorithms.partition_point.bench.cpp
    M libcxx/test/benchmarks/algorithms/min.bench.cpp
    M libcxx/test/benchmarks/algorithms/minmax.bench.cpp
    M libcxx/test/benchmarks/atomic_wait.bench.cpp
    M libcxx/test/benchmarks/atomic_wait_vs_mutex_lock.bench.cpp
    M libcxx/test/benchmarks/filesystem.bench.cpp
    M libcxx/test/benchmarks/format.bench.cpp
    M libcxx/test/benchmarks/format_to.bench.cpp
    M libcxx/test/benchmarks/format_to_n.bench.cpp
    M libcxx/test/benchmarks/formatted_size.bench.cpp
    M libcxx/test/benchmarks/formatter_float.bench.cpp
    M libcxx/test/benchmarks/formatter_int.bench.cpp
    M libcxx/test/benchmarks/lexicographical_compare_three_way.bench.cpp
    M libcxx/test/benchmarks/random.bench.cpp
    M libcxx/test/benchmarks/shared_mutex_vs_mutex.bench.cpp
    M libcxx/test/benchmarks/stop_token.bench.cpp
    M libcxx/test/benchmarks/string.bench.cpp
    M libcxx/test/benchmarks/stringstream.bench.cpp
    M libcxx/test/benchmarks/to_chars.bench.cpp
    M libcxx/test/benchmarks/unordered_set_operations.bench.cpp
    M libcxx/test/benchmarks/variant_visit_1.bench.cpp
    M libcxx/test/benchmarks/variant_visit_2.bench.cpp
    M libcxx/test/benchmarks/variant_visit_3.bench.cpp
    M libcxx/test/benchmarks/vector_operations.bench.cpp
    M libcxx/test/libcxx/input.output/iostream.format/output.streams/ostream.formatted/ostream.formatted.print/vprint_unicode.pass.cpp
    M libcxx/test/libcxx/input.output/iostream.format/output.streams/ostream.syn/includes.compile.pass.cpp
    M libcxx/test/libcxx/input.output/iostream.format/print.fun/transcoding.pass.cpp
    M libcxx/test/libcxx/input.output/iostream.format/print.fun/vprint_unicode_posix.pass.cpp
    M libcxx/test/libcxx/input.output/iostream.format/print.fun/vprint_unicode_windows.pass.cpp
    M libcxx/test/libcxx/time/convert_to_tm.pass.cpp
    M libcxx/test/libcxx/utilities/expected/expected.expected/no_unique_address.compile.pass.cpp
    M libcxx/test/libcxx/utilities/expected/expected.expected/noexcept.extension.compile.pass.cpp
    M libcxx/test/libcxx/utilities/expected/expected.unexpected/noexcept.extension.compile.pass.cpp
    M libcxx/test/libcxx/utilities/expected/expected.void/no_unique_address.compile.pass.cpp
    M libcxx/test/libcxx/utilities/expected/expected.void/noexcept.extension.compile.pass.cpp
    M libcxx/test/libcxx/utilities/expected/expected.void/value.lwg3940.verify.cpp
    M libcxx/test/libcxx/utilities/format/enable_insertable.compile.pass.cpp
    M libcxx/test/libcxx/utilities/format/format.arguments/format.arg/arg_t.compile.pass.cpp
    M libcxx/test/libcxx/utilities/format/format.formatter/format.context/types.compile.pass.cpp
    M libcxx/test/libcxx/utilities/format/format.functions/ascii.pass.cpp
    M libcxx/test/libcxx/utilities/format/format.functions/escaped_output.ascii.pass.cpp
    M libcxx/test/libcxx/utilities/format/format.string/format.string.std/code_point_width_estimation.pass.cpp
    M libcxx/test/libcxx/utilities/format/format.string/format.string.std/concepts_precision.h
    M libcxx/test/libcxx/utilities/format/format.string/format.string.std/escaped_output.pass.cpp
    M libcxx/test/libcxx/utilities/format/format.string/format.string.std/extended_grapheme_cluster.pass.cpp
    M libcxx/test/libcxx/utilities/format/format.string/format.string.std/test_exception.h
    M libcxx/test/std/containers/container.adaptors/container.adaptors.format/format.functions.format.pass.cpp
    M libcxx/test/std/containers/container.adaptors/container.adaptors.format/format.functions.tests.h
    M libcxx/test/std/containers/container.adaptors/container.adaptors.format/format.functions.vformat.pass.cpp
    M libcxx/test/std/containers/container.adaptors/container.adaptors.format/format.pass.cpp
    M libcxx/test/std/containers/container.adaptors/container.adaptors.format/parse.pass.cpp
    M libcxx/test/std/containers/container.adaptors/container.adaptors.format/types.compile.pass.cpp
    M libcxx/test/std/containers/sequences/vector.bool/vector.bool.fmt/format.functions.format.pass.cpp
    M libcxx/test/std/containers/sequences/vector.bool/vector.bool.fmt/format.functions.tests.h
    M libcxx/test/std/containers/sequences/vector.bool/vector.bool.fmt/format.functions.vformat.pass.cpp
    M libcxx/test/std/containers/sequences/vector.bool/vector.bool.fmt/format.pass.cpp
    M libcxx/test/std/containers/sequences/vector.bool/vector.bool.fmt/parse.pass.cpp
    M libcxx/test/std/containers/sequences/vector.bool/vector.bool.fmt/types.compile.pass.cpp
    M libcxx/test/std/input.output/iostream.format/output.streams/ostream.formatted/ostream.formatted.print/locale-specific_form.pass.cpp
    M libcxx/test/std/input.output/iostream.format/output.streams/ostream.formatted/ostream.formatted.print/print.pass.cpp
    M libcxx/test/std/input.output/iostream.format/output.streams/ostream.formatted/ostream.formatted.print/print_tests.h
    M libcxx/test/std/input.output/iostream.format/output.streams/ostream.formatted/ostream.formatted.print/println.pass.cpp
    M libcxx/test/std/input.output/iostream.format/output.streams/ostream.formatted/ostream.formatted.print/vprint_nonunicode.pass.cpp
    M libcxx/test/std/input.output/iostream.format/output.streams/ostream.formatted/ostream.formatted.print/vprint_unicode.pass.cpp
    M libcxx/test/std/input.output/iostream.format/print.fun/includes.compile.pass.cpp
    M libcxx/test/std/input.output/iostream.format/print.fun/no_file_description.pass.cpp
    M libcxx/test/std/input.output/iostream.format/print.fun/print.file.pass.cpp
    M libcxx/test/std/input.output/iostream.format/print.fun/print.sh.cpp
    M libcxx/test/std/input.output/iostream.format/print.fun/print_tests.h
    M libcxx/test/std/input.output/iostream.format/print.fun/println.blank_line.sh.cpp
    M libcxx/test/std/input.output/iostream.format/print.fun/println.file.pass.cpp
    M libcxx/test/std/input.output/iostream.format/print.fun/println.sh.cpp
    M libcxx/test/std/input.output/iostream.format/print.fun/vprint_nonunicode.file.pass.cpp
    M libcxx/test/std/input.output/iostream.format/print.fun/vprint_nonunicode.sh.cpp
    M libcxx/test/std/input.output/iostream.format/print.fun/vprint_unicode.file.pass.cpp
    M libcxx/test/std/input.output/iostream.format/print.fun/vprint_unicode.sh.cpp
    M libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.id/format.functions.format.pass.cpp
    M libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.id/format.functions.tests.h
    M libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.id/format.functions.vformat.pass.cpp
    M libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.id/format.pass.cpp
    M libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.id/parse.pass.cpp
    M libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.id/types.compile.pass.cpp
    M libcxx/test/std/time/time.syn/formatter.day.pass.cpp
    M libcxx/test/std/time/time.syn/formatter.duration.pass.cpp
    M libcxx/test/std/time/time.syn/formatter.file_time.pass.cpp
    M libcxx/test/std/time/time.syn/formatter.hh_mm_ss.pass.cpp
    M libcxx/test/std/time/time.syn/formatter.local_info.pass.cpp
    M libcxx/test/std/time/time.syn/formatter.local_time.pass.cpp
    M libcxx/test/std/time/time.syn/formatter.month.pass.cpp
    M libcxx/test/std/time/time.syn/formatter.month_day.pass.cpp
    M libcxx/test/std/time/time.syn/formatter.month_day_last.pass.cpp
    M libcxx/test/std/time/time.syn/formatter.month_weekday.pass.cpp
    M libcxx/test/std/time/time.syn/formatter.sys_info.pass.cpp
    M libcxx/test/std/time/time.syn/formatter.sys_time.pass.cpp
    M libcxx/test/std/time/time.syn/formatter.weekday.pass.cpp
    M libcxx/test/std/time/time.syn/formatter.weekday_index.pass.cpp
    M libcxx/test/std/time/time.syn/formatter.weekday_last.pass.cpp
    M libcxx/test/std/time/time.syn/formatter.year.pass.cpp
    M libcxx/test/std/time/time.syn/formatter.year_month.pass.cpp
    M libcxx/test/std/time/time.syn/formatter.year_month_day.pass.cpp
    M libcxx/test/std/time/time.syn/formatter.year_month_day_last.pass.cpp
    M libcxx/test/std/time/time.syn/formatter.year_month_weekday.pass.cpp
    M libcxx/test/std/time/time.syn/formatter.year_month_weekday_last.pass.cpp
    M libcxx/test/std/time/time.syn/formatter.zoned_time.pass.cpp
    M libcxx/test/std/time/time.syn/formatter_tests.h
    M libcxx/test/std/utilities/expected/expected.bad/base.compile.pass.cpp
    M libcxx/test/std/utilities/expected/expected.bad/ctor.error.pass.cpp
    M libcxx/test/std/utilities/expected/expected.bad/error.member.pass.cpp
    M libcxx/test/std/utilities/expected/expected.bad/void-specialization.pass.cpp
    M libcxx/test/std/utilities/expected/expected.bad/what.pass.cpp
    M libcxx/test/std/utilities/expected/expected.expected/assign/assign.U.pass.cpp
    M libcxx/test/std/utilities/expected/expected.expected/assign/assign.copy.pass.cpp
    M libcxx/test/std/utilities/expected/expected.expected/assign/assign.move.pass.cpp
    M libcxx/test/std/utilities/expected/expected.expected/assign/assign.unexpected.copy.pass.cpp
    M libcxx/test/std/utilities/expected/expected.expected/assign/assign.unexpected.move.pass.cpp
    M libcxx/test/std/utilities/expected/expected.expected/assign/emplace.intializer_list.pass.cpp
    M libcxx/test/std/utilities/expected/expected.expected/assign/emplace.pass.cpp
    M libcxx/test/std/utilities/expected/expected.expected/ctor/ctor.convert.copy.pass.cpp
    M libcxx/test/std/utilities/expected/expected.expected/ctor/ctor.convert.move.pass.cpp
    M libcxx/test/std/utilities/expected/expected.expected/ctor/ctor.copy.pass.cpp
    M libcxx/test/std/utilities/expected/expected.expected/ctor/ctor.default.pass.cpp
    M libcxx/test/std/utilities/expected/expected.expected/ctor/ctor.inplace.pass.cpp
    M libcxx/test/std/utilities/expected/expected.expected/ctor/ctor.inplace_init_list.pass.cpp
    M libcxx/test/std/utilities/expected/expected.expected/ctor/ctor.move.pass.cpp
    M libcxx/test/std/utilities/expected/expected.expected/ctor/ctor.u.pass.cpp
    M libcxx/test/std/utilities/expected/expected.expected/ctor/ctor.unexpect.pass.cpp
    M libcxx/test/std/utilities/expected/expected.expected/ctor/ctor.unexpect_init_list.pass.cpp
    M libcxx/test/std/utilities/expected/expected.expected/ctor/ctor.unexpected.copy.pass.cpp
    M libcxx/test/std/utilities/expected/expected.expected/ctor/ctor.unexpected.move.pass.cpp
    M libcxx/test/std/utilities/expected/expected.expected/dtor.pass.cpp
    M libcxx/test/std/utilities/expected/expected.expected/equality/equality.T2.pass.cpp
    M libcxx/test/std/utilities/expected/expected.expected/equality/equality.other_expected.pass.cpp
    M libcxx/test/std/utilities/expected/expected.expected/equality/equality.unexpected.pass.cpp
    M libcxx/test/std/utilities/expected/expected.expected/observers/arrow.pass.cpp
    M libcxx/test/std/utilities/expected/expected.expected/observers/bool.pass.cpp
    M libcxx/test/std/utilities/expected/expected.expected/observers/deref.pass.cpp
    M libcxx/test/std/utilities/expected/expected.expected/observers/error.pass.cpp
    M libcxx/test/std/utilities/expected/expected.expected/observers/has_value.pass.cpp
    M libcxx/test/std/utilities/expected/expected.expected/observers/value.pass.cpp
    M libcxx/test/std/utilities/expected/expected.expected/observers/value_or.pass.cpp
    M libcxx/test/std/utilities/expected/expected.expected/swap/free.swap.pass.cpp
    M libcxx/test/std/utilities/expected/expected.expected/swap/member.swap.pass.cpp
    M libcxx/test/std/utilities/expected/expected.unexpected/assign/assign.copy.pass.cpp
    M libcxx/test/std/utilities/expected/expected.unexpected/assign/assign.move.pass.cpp
    M libcxx/test/std/utilities/expected/expected.unexpected/ctad.compile.pass.cpp
    M libcxx/test/std/utilities/expected/expected.unexpected/ctor/ctor.copy.pass.cpp
    M libcxx/test/std/utilities/expected/expected.unexpected/ctor/ctor.error.pass.cpp
    M libcxx/test/std/utilities/expected/expected.unexpected/ctor/ctor.inplace.pass.cpp
    M libcxx/test/std/utilities/expected/expected.unexpected/ctor/ctor.inplace_init_list.pass.cpp
    M libcxx/test/std/utilities/expected/expected.unexpected/ctor/ctor.move.pass.cpp
    M libcxx/test/std/utilities/expected/expected.unexpected/equality.pass.cpp
    M libcxx/test/std/utilities/expected/expected.unexpected/observer/error.const_ref.pass.cpp
    M libcxx/test/std/utilities/expected/expected.unexpected/observer/error.const_ref_ref.pass.cpp
    M libcxx/test/std/utilities/expected/expected.unexpected/observer/error.ref.pass.cpp
    M libcxx/test/std/utilities/expected/expected.unexpected/observer/error.ref_ref.pass.cpp
    M libcxx/test/std/utilities/expected/expected.unexpected/swap/swap.free.pass.cpp
    M libcxx/test/std/utilities/expected/expected.unexpected/swap/swap.member.pass.cpp
    M libcxx/test/std/utilities/expected/expected.void/assign/assign.copy.pass.cpp
    M libcxx/test/std/utilities/expected/expected.void/assign/assign.move.pass.cpp
    M libcxx/test/std/utilities/expected/expected.void/assign/assign.unexpected.copy.pass.cpp
    M libcxx/test/std/utilities/expected/expected.void/assign/assign.unexpected.move.pass.cpp
    M libcxx/test/std/utilities/expected/expected.void/assign/emplace.pass.cpp
    M libcxx/test/std/utilities/expected/expected.void/ctor/ctor.convert.copy.pass.cpp
    M libcxx/test/std/utilities/expected/expected.void/ctor/ctor.convert.move.pass.cpp
    M libcxx/test/std/utilities/expected/expected.void/ctor/ctor.copy.pass.cpp
    M libcxx/test/std/utilities/expected/expected.void/ctor/ctor.default.pass.cpp
    M libcxx/test/std/utilities/expected/expected.void/ctor/ctor.inplace.pass.cpp
    M libcxx/test/std/utilities/expected/expected.void/ctor/ctor.move.pass.cpp
    M libcxx/test/std/utilities/expected/expected.void/ctor/ctor.unexpect.pass.cpp
    M libcxx/test/std/utilities/expected/expected.void/ctor/ctor.unexpect_init_list.pass.cpp
    M libcxx/test/std/utilities/expected/expected.void/ctor/ctor.unexpected.copy.pass.cpp
    M libcxx/test/std/utilities/expected/expected.void/ctor/ctor.unexpected.move.pass.cpp
    M libcxx/test/std/utilities/expected/expected.void/dtor.pass.cpp
    M libcxx/test/std/utilities/expected/expected.void/equality/equality.other_expected.pass.cpp
    M libcxx/test/std/utilities/expected/expected.void/equality/equality.unexpected.pass.cpp
    M libcxx/test/std/utilities/expected/expected.void/observers/bool.pass.cpp
    M libcxx/test/std/utilities/expected/expected.void/observers/deref.pass.cpp
    M libcxx/test/std/utilities/expected/expected.void/observers/error.pass.cpp
    M libcxx/test/std/utilities/expected/expected.void/observers/has_value.pass.cpp
    M libcxx/test/std/utilities/expected/expected.void/observers/value.pass.cpp
    M libcxx/test/std/utilities/expected/expected.void/swap/free.swap.pass.cpp
    M libcxx/test/std/utilities/expected/expected.void/swap/member.swap.pass.cpp
    M libcxx/test/std/utilities/format/format.arguments/format.arg.store/make_format_args.pass.cpp
    M libcxx/test/std/utilities/format/format.arguments/format.arg.store/make_format_args.sh.cpp
    M libcxx/test/std/utilities/format/format.arguments/format.arg.store/make_wformat_args.pass.cpp
    M libcxx/test/std/utilities/format/format.arguments/format.arg/ctor.pass.cpp
    M libcxx/test/std/utilities/format/format.arguments/format.arg/operator_bool.pass.cpp
    M libcxx/test/std/utilities/format/format.arguments/format.arg/visit.pass.cpp
    M libcxx/test/std/utilities/format/format.arguments/format.arg/visit.return_type.pass.cpp
    M libcxx/test/std/utilities/format/format.arguments/format.arg/visit_format_arg.deprecated.verify.cpp
    M libcxx/test/std/utilities/format/format.arguments/format.arg/visit_format_arg.pass.cpp
    M libcxx/test/std/utilities/format/format.arguments/format.args/ctad.compile.pass.cpp
    M libcxx/test/std/utilities/format/format.arguments/format.args/ctor.pass.cpp
    M libcxx/test/std/utilities/format/format.arguments/format.args/get.pass.cpp
    M libcxx/test/std/utilities/format/format.arguments/format.args/types.compile.pass.cpp
    M libcxx/test/std/utilities/format/format.formattable/concept.formattable.compile.pass.cpp
    M libcxx/test/std/utilities/format/format.formattable/concept.formattable.float.compile.pass.cpp
    M libcxx/test/std/utilities/format/format.formatter/format.context/format.context/advance_to.pass.cpp
    M libcxx/test/std/utilities/format/format.formatter/format.context/format.context/arg.pass.cpp
    M libcxx/test/std/utilities/format/format.formatter/format.context/format.context/ctor.pass.cpp
    M libcxx/test/std/utilities/format/format.formatter/format.context/format.context/locale.pass.cpp
    M libcxx/test/std/utilities/format/format.formatter/format.context/format.context/out.pass.cpp
    M libcxx/test/std/utilities/format/format.formatter/format.formatter.locking/enable_nonlocking_formatter_optimization.compile.pass.cpp
    M libcxx/test/std/utilities/format/format.formatter/format.formatter.spec/formatter.bool.pass.cpp
    M libcxx/test/std/utilities/format/format.formatter/format.formatter.spec/formatter.c_string.pass.cpp
    M libcxx/test/std/utilities/format/format.formatter/format.formatter.spec/formatter.char.fsigned-char.pass.cpp
    M libcxx/test/std/utilities/format/format.formatter/format.formatter.spec/formatter.char.funsigned-char.pass.cpp
    M libcxx/test/std/utilities/format/format.formatter/format.formatter.spec/formatter.char.pass.cpp
    M libcxx/test/std/utilities/format/format.formatter/format.formatter.spec/formatter.char_array.pass.cpp
    M libcxx/test/std/utilities/format/format.formatter/format.formatter.spec/formatter.floating_point.pass.cpp
    M libcxx/test/std/utilities/format/format.formatter/format.formatter.spec/formatter.handle.pass.cpp
    M libcxx/test/std/utilities/format/format.formatter/format.formatter.spec/formatter.pointer.pass.cpp
    M libcxx/test/std/utilities/format/format.formatter/format.formatter.spec/formatter.signed_integral.pass.cpp
    M libcxx/test/std/utilities/format/format.formatter/format.formatter.spec/formatter.string.pass.cpp
    M libcxx/test/std/utilities/format/format.formatter/format.formatter.spec/formatter.unsigned_integral.pass.cpp
    M libcxx/test/std/utilities/format/format.formatter/format.parse.ctx/advance_to.pass.cpp
    M libcxx/test/std/utilities/format/format.formatter/format.parse.ctx/begin.pass.cpp
    M libcxx/test/std/utilities/format/format.formatter/format.parse.ctx/check_arg_id.pass.cpp
    M libcxx/test/std/utilities/format/format.formatter/format.parse.ctx/check_arg_id.verify.cpp
    M libcxx/test/std/utilities/format/format.formatter/format.parse.ctx/ctor.pass.cpp
    M libcxx/test/std/utilities/format/format.formatter/format.parse.ctx/end.pass.cpp
    M libcxx/test/std/utilities/format/format.formatter/format.parse.ctx/next_arg_id.pass.cpp
    M libcxx/test/std/utilities/format/format.formatter/format.parse.ctx/next_arg_id.verify.cpp
    M libcxx/test/std/utilities/format/format.formatter/format.parse.ctx/types.compile.pass.cpp
    M libcxx/test/std/utilities/format/format.functions/P2418.pass.cpp
    M libcxx/test/std/utilities/format/format.functions/bug_81590.compile.pass.cpp
    M libcxx/test/std/utilities/format/format.functions/escaped_output.unicode.pass.cpp
    M libcxx/test/std/utilities/format/format.functions/fill.unicode.pass.cpp
    M libcxx/test/std/utilities/format/format.functions/format.locale.pass.cpp
    M libcxx/test/std/utilities/format/format.functions/format.locale.runtime_format.pass.cpp
    M libcxx/test/std/utilities/format/format.functions/format.locale.verify.cpp
    M libcxx/test/std/utilities/format/format.functions/format.pass.cpp
    M libcxx/test/std/utilities/format/format.functions/format.runtime_format.pass.cpp
    M libcxx/test/std/utilities/format/format.functions/format.verify.cpp
    M libcxx/test/std/utilities/format/format.functions/format_tests.h
    M libcxx/test/std/utilities/format/format.functions/format_to.locale.pass.cpp
    M libcxx/test/std/utilities/format/format.functions/format_to.locale.verify.cpp
    M libcxx/test/std/utilities/format/format.functions/format_to.pass.cpp
    M libcxx/test/std/utilities/format/format.functions/format_to.verify.cpp
    M libcxx/test/std/utilities/format/format.functions/format_to_n.locale.pass.cpp
    M libcxx/test/std/utilities/format/format.functions/format_to_n.locale.verify.cpp
    M libcxx/test/std/utilities/format/format.functions/format_to_n.pass.cpp
    M libcxx/test/std/utilities/format/format.functions/format_to_n.verify.cpp
    M libcxx/test/std/utilities/format/format.functions/formatted_size.locale.pass.cpp
    M libcxx/test/std/utilities/format/format.functions/formatted_size.locale.verify.cpp
    M libcxx/test/std/utilities/format/format.functions/formatted_size.pass.cpp
    M libcxx/test/std/utilities/format/format.functions/formatted_size.verify.cpp
    M libcxx/test/std/utilities/format/format.functions/locale-specific_form.pass.cpp
    M libcxx/test/std/utilities/format/format.functions/unicode.pass.cpp
    M libcxx/test/std/utilities/format/format.functions/vformat.locale.pass.cpp
    M libcxx/test/std/utilities/format/format.functions/vformat.pass.cpp
    M libcxx/test/std/utilities/format/format.functions/vformat_to.locale.pass.cpp
    M libcxx/test/std/utilities/format/format.functions/vformat_to.pass.cpp
    M libcxx/test/std/utilities/format/format.range/format.range.fmtdef/format.pass.cpp
    M libcxx/test/std/utilities/format/format.range/format.range.fmtdef/parse.pass.cpp
    M libcxx/test/std/utilities/format/format.range/format.range.fmtdef/set_brackets.pass.cpp
    M libcxx/test/std/utilities/format/format.range/format.range.fmtdef/set_separator.pass.cpp
    M libcxx/test/std/utilities/format/format.range/format.range.fmtkind/format_kind.compile.pass.cpp
    M libcxx/test/std/utilities/format/format.range/format.range.fmtkind/format_kind.verify.cpp
    M libcxx/test/std/utilities/format/format.range/format.range.fmtkind/range_format.compile.pass.cpp
    M libcxx/test/std/utilities/format/format.range/format.range.fmtmap/format.functions.format.pass.cpp
    M libcxx/test/std/utilities/format/format.range/format.range.fmtmap/format.functions.tests.h
    M libcxx/test/std/utilities/format/format.range/format.range.fmtmap/format.functions.vformat.pass.cpp
    M libcxx/test/std/utilities/format/format.range/format.range.fmtmap/format.pass.cpp
    M libcxx/test/std/utilities/format/format.range/format.range.fmtmap/parse.pass.cpp
    M libcxx/test/std/utilities/format/format.range/format.range.fmtset/format.functions.format.pass.cpp
    M libcxx/test/std/utilities/format/format.range/format.range.fmtset/format.functions.tests.h
    M libcxx/test/std/utilities/format/format.range/format.range.fmtset/format.functions.vformat.pass.cpp
    M libcxx/test/std/utilities/format/format.range/format.range.fmtset/format.pass.cpp
    M libcxx/test/std/utilities/format/format.range/format.range.fmtset/parse.pass.cpp
    M libcxx/test/std/utilities/format/format.range/format.range.fmtstr/format.functions.format.pass.cpp
    M libcxx/test/std/utilities/format/format.range/format.range.fmtstr/format.functions.tests.h
    M libcxx/test/std/utilities/format/format.range/format.range.fmtstr/format.functions.vformat.pass.cpp
    M libcxx/test/std/utilities/format/format.range/format.range.fmtstr/format.pass.cpp
    M libcxx/test/std/utilities/format/format.range/format.range.fmtstr/parse.pass.cpp
    M libcxx/test/std/utilities/format/format.range/format.range.formatter/format.functions.format.pass.cpp
    M libcxx/test/std/utilities/format/format.range/format.range.formatter/format.functions.tests.h
    M libcxx/test/std/utilities/format/format.range/format.range.formatter/format.functions.vformat.pass.cpp
    M libcxx/test/std/utilities/format/format.range/format.range.formatter/format.pass.cpp
    M libcxx/test/std/utilities/format/format.range/format.range.formatter/parse.pass.cpp
    M libcxx/test/std/utilities/format/format.range/format.range.formatter/set_brackets.pass.cpp
    M libcxx/test/std/utilities/format/format.range/format.range.formatter/set_separator.pass.cpp
    M libcxx/test/std/utilities/format/format.range/format.range.formatter/underlying.pass.cpp
    M libcxx/test/std/utilities/format/format.string/format.string.std/lwg3720_arg_id_width_precision_allowed_types.pass.cpp
    M libcxx/test/std/utilities/format/format.string/format.string.std/lwg3720_arg_id_width_precision_allowed_types.verify.cpp
    M libcxx/test/std/utilities/format/format.tuple/format.functions.format.pass.cpp
    M libcxx/test/std/utilities/format/format.tuple/format.functions.format.verify.cpp
    M libcxx/test/std/utilities/format/format.tuple/format.functions.tests.h
    M libcxx/test/std/utilities/format/format.tuple/format.functions.vformat.pass.cpp
    M libcxx/test/std/utilities/format/format.tuple/format.pass.cpp
    M libcxx/test/std/utilities/format/format.tuple/parse.pass.cpp
    M libcxx/test/std/utilities/format/format.tuple/set_brackets.pass.cpp
    M libcxx/test/std/utilities/format/format.tuple/set_separator.pass.cpp
    M libcxx/test/std/utilities/format/types.compile.pass.cpp
    M libcxx/test/support/format.functions.common.h
    M libcxx/test/support/test.support/make_string_header.pass.cpp
    M libcxx/test/support/test_basic_format_arg.h

  Log Message:
  -----------
  [libc++][NFC] Add missing license headers

Also standardize the license comment in several files where it was
different from what we normally do.


  Commit: a847b0f37d5dd0a3334eb822b35e89fa835a4b8d
      https://github.com/llvm/llvm-project/commit/a847b0f37d5dd0a3334eb822b35e89fa835a4b8d
  Author: Marc Auberer <marc.auberer at chillibits.com>
  Date:   2024-07-31 (Wed, 31 Jul 2024)

  Changed paths:
    M llvm/lib/Target/README.txt

  Log Message:
  -----------
  Remove already implemented target independent optimization opportunity (#101233)

Fixes #101127

See this working example: https://godbolt.org/z/z15oj15eP


  Commit: 28a079223dd22f13ca51dfa8f5d51a9cd3514edf
      https://github.com/llvm/llvm-project/commit/28a079223dd22f13ca51dfa8f5d51a9cd3514edf
  Author: Brian Yahn <yahn at google.com>
  Date:   2024-07-31 (Wed, 31 Jul 2024)

  Changed paths:
    M clang/include/clang/AST/ASTContext.h

  Log Message:
  -----------
  Fix typo: tyep -> type.


  Commit: a3fb30143565cca2c794ab0e9921d50b09cadfc7
      https://github.com/llvm/llvm-project/commit/a3fb30143565cca2c794ab0e9921d50b09cadfc7
  Author: Rob Suderman <rob.suderman at gmail.com>
  Date:   2024-07-31 (Wed, 31 Jul 2024)

  Changed paths:
    M mlir/lib/Dialect/Math/Transforms/PolynomialApproximation.cpp
    M mlir/test/mlir-cpu-runner/math-polynomial-approx.mlir

  Log Message:
  -----------
  [mlir][math] Fix polynomial `math.asin` approximation (#101247)

The polynomial approximation for asin is only good between [-9/16,
9/16]. Values beyond that range must be remapped to achieve good numeric
results. This is done by the equation below:

`arcsin(x) = PI/2 - arcsin(sqrt(1.0 - x*x))`


  Commit: 9718f3dec1c366809b0c2508ba77cc5dd3cf82ec
      https://github.com/llvm/llvm-project/commit/9718f3dec1c366809b0c2508ba77cc5dd3cf82ec
  Author: vporpo <vporpodas at google.com>
  Date:   2024-07-31 (Wed, 31 Jul 2024)

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

  Log Message:
  -----------
  [SandboxIR] Implement FPToSIInst (#101362)

This patch implements sandboxir::FPToSIInst which mirrors
llvm::FPToSIInst.


  Commit: a4c6ebeb20168bbedbb1a3aff9f5096416e5914a
      https://github.com/llvm/llvm-project/commit/a4c6ebeb20168bbedbb1a3aff9f5096416e5914a
  Author: Brandon Wu <brandon.wu at sifive.com>
  Date:   2024-08-01 (Thu, 01 Aug 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/ValueTypes.td
    M llvm/include/llvm/CodeGenTypes/MachineValueType.h
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp
    M llvm/test/TableGen/dag-isel-regclass-emit-enum.td
    M llvm/utils/TableGen/Common/CodeGenDAGPatterns.h
    M llvm/utils/TableGen/DAGISelMatcherEmitter.cpp
    M llvm/utils/TableGen/VTEmitter.cpp

  Log Message:
  -----------
  [MVT][TableGen] Extend Machine Value Type to `uint16_t` (#99657)

RFC:
https://discourse.llvm.org/t/rfc-extend-machine-value-type-from-uint8-t-to-uint16-t/80274
compile-time-tracker:
https://llvm-compile-time-tracker.com/compare.php?from=4b9fab591916eec9fd1942f37afe3b137b564089&to=177d28247efe5a4d59a8d8150b4daf01e4f57d74&stat=wall-time

Currently 208 out of 256 MVTs are used, it will be run out soon, so
ultimately we need to extend the original `MVT::SimpleValueType` from
`uint8_t` to `uint16_t` to accomodate more types.
The `MatcherTable` uses `unsigned char` for encoding the matcher code,
so the extended MVTs are no longer fit into the table, thus we need to
use VBR to encode them as we do on others that are wider than 8 bits.

The statistics below shows the difference of "Total Array size" of the
matcher table that appears in every files:
```
Table                       Before     After     Change(%)
WebAssemblyGenDAGISel.inc   23576      23775     0.844
NVPTXGenDAGISel.inc         173498     173498    0
RISCVGenDAGISel.inc         2179121    2369929   8.756
AVRGenDAGISel.inc           2754       2754      0
PPCGenDAGISel.inc           163315     163617    0.185
MipsGenDAGISel.inc          47280      47447     0.353
SystemZGenDAGISel.inc       56243      56461     0.388
AArch64GenDAGISel.inc       467893     487830    4.261
MSP430GenDAGISel.inc        8069       8069      0
LoongArchGenDAGISel.inc     78928      79131     0.257
XCoreGenDAGISel.inc         3432       3432      0
BPFGenDAGISel.inc           3733       3733      0
VEGenDAGISel.inc            65174      66456     1.967
LanaiGenDAGISel.inc         2067       2067      0
X86GenDAGISel.inc           628787     636987    1.304
ARMGenDAGISel.inc           170968     171036    0.040
HexagonGenDAGISel.inc       155764     155764    0
SparcGenDAGISel.inc         5762       5798      0.625
AMDGPUGenDAGISel.inc        504356     504463    0.021
R600GenDAGISel.inc          29785      29785     0
```

The statistics below shows the runtime peak memory usage by compiling a
simple C program:
`/bin/time -v clang -target $TARGET -O3 -c test.c`
```
  int test(int a) {
    return a * 3;
  }
```
```
Target        Before(kbytes)    After(kbytes)    Change(%)
wasm64        110172            110088           -0.076
nvptx64       109784            109980            0.179
riscv64       114020            113656           -0.319
avr           110352            110068           -0.257
ppc64         112612            112476           -0.120
mips64        113588            113668            0.070
systemz       110860            110760           -0.090
aarch64       113704            113432           -0.239
msp430        110284            110200           -0.076
loongarch64   111052            110756           -0.267
xcore         108340            108020           -0.295
bpf           110620            110708            0.080
ve            110960            110920           -0.036
lanai         110180            109960           -0.200
x86_64        113640            113304           -0.296
arm64         113540            113172           -0.324
hexagon       114620            114684            0.056
sparc         110412            110136           -0.250
amdgcn        118164            117144           -0.863
r600          111200            110508           -0.622
```


  Commit: 6d103d7746c94cc865138093c7c65138b89aa77c
      https://github.com/llvm/llvm-project/commit/6d103d7746c94cc865138093c7c65138b89aa77c
  Author: Alexis Engelke <engelke at in.tum.de>
  Date:   2024-07-31 (Wed, 31 Jul 2024)

  Changed paths:
    M llvm/include/llvm/Analysis/GenericDomTreeUpdater.h
    M llvm/lib/Analysis/DomTreeUpdater.cpp
    M llvm/lib/CodeGen/EarlyIfConversion.cpp
    M llvm/lib/Target/AArch64/AArch64ConditionalCompares.cpp
    M llvm/unittests/IR/DominatorTreeTest.cpp

  Log Message:
  -----------
  [Support] Erase blocks after DomTree::eraseNode (#101195)

Change eraseNode to require that the basic block is still contained
inside the function. This is a preparation for using numbers of basic
blocks inside the dominator tree, which are invalid for blocks that are
not inside a function.


  Commit: 9fe455fd0c7d6f2107b33b37c04bbd3b12fe65b3
      https://github.com/llvm/llvm-project/commit/9fe455fd0c7d6f2107b33b37c04bbd3b12fe65b3
  Author: Felipe de Azevedo Piovezan <fpiovezan at apple.com>
  Date:   2024-07-31 (Wed, 31 Jul 2024)

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

  Log Message:
  -----------
  [lldb] Add constant value mode for RegisterLocation in UnwindPlans (#100624)

This is useful for language runtimes that compute register values by
inspecting the state of the currently running process. Currently, there
are no mechanisms enabling these runtimes to set register values to
arbitrary values.

The alternative considered would involve creating a dwarf expression
that produces an arbitrary integer (e.g. using OP_constu). However, the
current data structure for Rows is such that they do not own any memory
associated with dwarf expressions, which implies any such expression
would need to have static storage and therefore could not contain a
runtime value.

Adding a new rule for constants leads to a simpler implementation. It's
also worth noting that this does not make the "Location" union any
bigger, since it already contains a pointer+size pair.


  Commit: 8b17b12912ff59b0c9f2825ac2cc258418ed349b
      https://github.com/llvm/llvm-project/commit/8b17b12912ff59b0c9f2825ac2cc258418ed349b
  Author: vporpo <vporpodas at google.com>
  Date:   2024-07-31 (Wed, 31 Jul 2024)

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

  Log Message:
  -----------
  [SandboxIR] Implement FPToUIInst (#101369)

This patch implements sandboxir::FPToUIInst which mirrors
llvm::FPToUIInst.


  Commit: 35a2e6d24bcb94720ec7b3aa00e58a1b7b837fbc
      https://github.com/llvm/llvm-project/commit/35a2e6d24bcb94720ec7b3aa00e58a1b7b837fbc
  Author: Philip Reames <preames at rivosinc.com>
  Date:   2024-07-31 (Wed, 31 Jul 2024)

  Changed paths:
    M llvm/test/Analysis/ScalarEvolution/finite-trip-count.ll
    M llvm/test/Analysis/ScalarEvolution/ne-overflow.ll
    M llvm/test/Analysis/ScalarEvolution/trip-count-implied-addrec.ll

  Log Message:
  -----------
  [SCEV] Regen a couple auto-gen tests


  Commit: f9827e67ce2ccad863fac9d062eacbd60d829375
      https://github.com/llvm/llvm-project/commit/f9827e67ce2ccad863fac9d062eacbd60d829375
  Author: Volodymyr Sapsai <vsapsai at apple.com>
  Date:   2024-07-31 (Wed, 31 Jul 2024)

  Changed paths:
    M clang/include/clang/Basic/DiagnosticSerializationKinds.td
    M clang/lib/Serialization/ASTReader.cpp
    M clang/test/Index/pch-with-errors.c
    M clang/test/Modules/load-module-with-errors.m

  Log Message:
  -----------
  [Modules][Diagnostic] Don't claim a METADATA mismatch is always in PCH file. (#101280)

You can provide more than one AST file as an input. Emit a path for a
file with a problem, so you can disambiguate between multiple files.

rdar://65005546


  Commit: 366eade911b54878c9cc1835d2544fb4ba907ef5
      https://github.com/llvm/llvm-project/commit/366eade911b54878c9cc1835d2544fb4ba907ef5
  Author: Leandro Lupori <leandro.lupori at linaro.org>
  Date:   2024-07-31 (Wed, 31 Jul 2024)

  Changed paths:
    M flang/include/flang/Semantics/tools.h
    M flang/lib/Semantics/resolve-directives.cpp
    A flang/test/Lower/OpenMP/associate.f90
    M flang/test/Lower/OpenMP/default-clause-implied-do-fix.f90
    A flang/test/Semantics/OpenMP/copyprivate04.f90
    M flang/test/Semantics/OpenMP/do05-positivecase.f90
    M flang/test/Semantics/OpenMP/do20.f90
    M flang/test/Semantics/OpenMP/implicit-dsa.f90
    A flang/test/Semantics/OpenMP/parallel-shared05.f90
    M flang/test/Semantics/OpenMP/reduction08.f90
    M flang/test/Semantics/OpenMP/reduction09.f90
    M flang/test/Semantics/OpenMP/symbol01.f90
    M flang/test/Semantics/OpenMP/symbol02.f90
    M flang/test/Semantics/OpenMP/symbol03.f90
    M flang/test/Semantics/OpenMP/symbol05.f90
    M flang/test/Semantics/OpenMP/symbol07.f90
    M flang/test/Semantics/OpenMP/symbol08.f90
    M flang/test/Semantics/OpenMP/symbol09.f90

  Log Message:
  -----------
  [flang][OpenMP] Reland Fix copyprivate semantic checks (#95799) (#101009)

There are some cases in which variables used in OpenMP constructs
are predetermined as private. The semantic checks for copyprivate
were not handling those cases.

Besides that, shared symbols were not being properly represented
in some cases. When there was no previously declared private
(implicit) symbol, no new association symbols, representing
shared ones, were being created.

These symbols must always be inserted in constructs that may
privatize the original symbol: parallel, teams and task
generating constructs.

Fixes #87214 and #86907


  Commit: 055893f164f595e5d4115db17dd479ed3401bf00
      https://github.com/llvm/llvm-project/commit/055893f164f595e5d4115db17dd479ed3401bf00
  Author: Brox Chen <broxigarchen at outlook.com>
  Date:   2024-07-31 (Wed, 31 Jul 2024)

  Changed paths:
    A llvm/test/MC/AMDGPU/gfx12_asm_vop1-fake16.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop1.s
    A llvm/test/MC/AMDGPU/gfx12_asm_vop1_dpp16-fake16.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop1_dpp16.s
    A llvm/test/MC/AMDGPU/gfx12_asm_vop1_dpp8-fake16.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop1_dpp8.s
    A llvm/test/MC/AMDGPU/gfx12_asm_vop1_t16_err-fake16.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop1_t16_err.s

  Log Message:
  -----------
  [AMDGPU][True16][MC] duplicate vop1 tests to fake16 and update real-true16 flags for GFX12 (#100849)

duplicate vop1 tests to fake16 and update real-true16 flags for GFX12

creating duplications here to avoid bulk copy in the following true16
patches

---------

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


  Commit: 6aa723daa9d9c54c597788d384b41dd735359316
      https://github.com/llvm/llvm-project/commit/6aa723daa9d9c54c597788d384b41dd735359316
  Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
  Date:   2024-08-01 (Thu, 01 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 nan libfunc (#101356)

Reference: https://en.cppreference.com/w/cpp/numeric/math/nan


  Commit: 0a01e8ff530ab15277aa9fad5361297d7b55e247
      https://github.com/llvm/llvm-project/commit/0a01e8ff530ab15277aa9fad5361297d7b55e247
  Author: Alexandre Perez <alexandrecperez at gmail.com>
  Date:   2024-07-31 (Wed, 31 Jul 2024)

  Changed paths:
    M lldb/include/lldb/Target/Target.h
    M lldb/source/Target/Target.cpp
    M lldb/source/Target/TargetProperties.td
    M lldb/test/API/functionalities/postmortem/elf-core/TestLinuxCore.py

  Log Message:
  -----------
  [lldb] Allow mapping object file paths (#101361)

This introduces a `target.object-map` which allows us to remap module
locations, much in the same way as source mapping works today. This is
useful, for instance, when debugging coredumps, so we can replace some
of the locations where LLDB attempts to load shared libraries and
executables from, without having to setup an entire sysroot.


  Commit: 6d3317e5389d3041c4a0ae588919d7a2fe2764f0
      https://github.com/llvm/llvm-project/commit/6d3317e5389d3041c4a0ae588919d7a2fe2764f0
  Author: vporpo <vporpodas at google.com>
  Date:   2024-07-31 (Wed, 31 Jul 2024)

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

  Log Message:
  -----------
  [SandboxIR] Implement SIToFPInst (#101374)

This patch implements sandboxir::SIToFPInst which mirrors
llvm::SIToFPInst.


  Commit: 496fedaccac569438ccb1fd65bf3b30eb5557350
      https://github.com/llvm/llvm-project/commit/496fedaccac569438ccb1fd65bf3b30eb5557350
  Author: ChiaHungDuan <chiahungduan at google.com>
  Date:   2024-07-31 (Wed, 31 Jul 2024)

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

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

Reverts llvm/llvm-project#100818


  Commit: d0b4b6b12dea662a9316e2f83277288be37be666
      https://github.com/llvm/llvm-project/commit/d0b4b6b12dea662a9316e2f83277288be37be666
  Author: Paul T Robinson <paul.robinson at sony.com>
  Date:   2024-07-31 (Wed, 31 Jul 2024)

  Changed paths:
    M clang/lib/Driver/ToolChains/CommonArgs.cpp

  Log Message:
  -----------
  [Driver] Correct comment on default for -falign-functions (#101257)


  Commit: 33960ce5a8e26baf05521fd7f8be5c5abb6bb0ff
      https://github.com/llvm/llvm-project/commit/33960ce5a8e26baf05521fd7f8be5c5abb6bb0ff
  Author: Sayhaan Siddiqui <49014204+sayhaan at users.noreply.github.com>
  Date:   2024-07-31 (Wed, 31 Jul 2024)

  Changed paths:
    M bolt/include/bolt/Core/GDBIndex.h
    M bolt/lib/Core/GDBIndex.cpp
    M bolt/test/X86/dwarf4-split-gdb-index-types-gdb-generated.test

  Log Message:
  -----------
  [BOLT][DWARF] Sort GDBIndexTUEntryVector (#101264)

Sorts GDBIndexTUEntryVector in decreasing order by hash to ensure
determinism when parallelized.


  Commit: 9a1013220b668d846e63f241203b80515dee0a03
      https://github.com/llvm/llvm-project/commit/9a1013220b668d846e63f241203b80515dee0a03
  Author: Johannes Doerfert <johannes at jdoerfert.de>
  Date:   2024-07-31 (Wed, 31 Jul 2024)

  Changed paths:
    M offload/include/Shared/EnvironmentVar.h
    M offload/plugins-nextgen/amdgpu/dynamic_hsa/hsa.h
    M offload/plugins-nextgen/amdgpu/src/rtl.cpp
    M offload/plugins-nextgen/common/include/ErrorReporting.h
    M offload/plugins-nextgen/common/include/PluginInterface.h
    M offload/plugins-nextgen/common/src/PluginInterface.cpp
    A offload/test/sanitizer/kernel_crash.c
    A offload/test/sanitizer/kernel_crash_async.c
    A offload/test/sanitizer/kernel_crash_many.c
    A offload/test/sanitizer/kernel_crash_single.c
    A offload/test/sanitizer/kernel_trap.c
    A offload/test/sanitizer/kernel_trap_async.c
    A offload/test/sanitizer/kernel_trap_many.c
    M openmp/docs/design/Runtimes.rst

  Log Message:
  -----------
  [Offload] Allow to record kernel launch stack traces (#100472)

Similar to (de)allocation traces, we can record kernel launch stack
traces and display them in case of an error. However, the AMD GPU plugin
signal handler, which is invoked on memroy faults, cannot pinpoint the
offending kernel. Insteade print `<NUM>`, set via
`OFFLOAD_TRACK_NUM_KERNEL_LAUNCH_TRACES=<NUM>`, many traces. The
recoding/record uses a ring buffer of fixed size (for now 8).
For `trap` errors, we print the actual kernel name, and trace if
recorded.


  Commit: b66aa3bfff442a5eb67f1bfcfaa148e42e49b787
      https://github.com/llvm/llvm-project/commit/b66aa3bfff442a5eb67f1bfcfaa148e42e49b787
  Author: OverMighty <its.overmighty at gmail.com>
  Date:   2024-07-31 (Wed, 31 Jul 2024)

  Changed paths:
    M libc/src/math/generic/CMakeLists.txt
    M libc/src/math/generic/expf16.cpp
    M libc/test/src/math/performance_testing/expf16_perf.cpp
    M libc/test/src/math/smoke/expf16_test.cpp

  Log Message:
  -----------
  [libc][math][c23] Refactor expf16 (#101373)

Also updates and sorts CMake target dependencies, and corrects the smoke
test that expected expf16(sNaN) to return sNaN instead of aNaN, although
the test still passed, as FPMatcher only checks whether both sides are
NaN, not whether they're the same NaN value.


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

  Changed paths:
    A llvm/test/CodeGen/AMDGPU/materialize-frame-index-sgpr.gfx10.ll
    A llvm/test/CodeGen/AMDGPU/materialize-frame-index-sgpr.ll

  Log Message:
  -----------
  AMDGPU: Add testcase for materializing sgpr frame indexes (#101306)

These add some IR tests for 57d10b4fc9142d12fbdec578a0cc6f78deb67ef4.
These do rely on some lucky MIR placement to test the scc input, but I
haven't found a better way to do it. Also, scc handling in inline asm
is extremely buggy.


  Commit: 6740d701bde4ad9b95d7d811852fa0a2542e6b28
      https://github.com/llvm/llvm-project/commit/6740d701bde4ad9b95d7d811852fa0a2542e6b28
  Author: MaheshRavishankar <1663364+MaheshRavishankar at users.noreply.github.com>
  Date:   2024-07-31 (Wed, 31 Jul 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/Linalg/TransformOps/LinalgTransformOps.h
    M mlir/include/mlir/Dialect/Linalg/Transforms/Transforms.h
    M mlir/include/mlir/Dialect/SCF/Transforms/TileUsingInterface.h
    M mlir/include/mlir/Dialect/SCF/Utils/Utils.h
    M mlir/lib/Dialect/Linalg/TransformOps/LinalgTransformOps.cpp
    M mlir/lib/Dialect/Linalg/Transforms/Tiling.cpp
    M mlir/lib/Dialect/SCF/Transforms/TileUsingInterface.cpp
    M mlir/lib/Dialect/SCF/Utils/Utils.cpp
    M mlir/test/Dialect/Linalg/tile-tensors.mlir
    M mlir/test/Dialect/Linalg/tile-to-forall.mlir
    M mlir/test/Dialect/Linalg/transform-op-tile.mlir
    M mlir/test/Interfaces/TilingInterface/tile-and-fuse-using-interface.mlir
    M mlir/test/Interfaces/TilingInterface/tile-pad-using-interface.mlir
    M mlir/test/Interfaces/TilingInterface/tile-using-interface.mlir
    M mlir/test/Interfaces/TilingInterface/tile-using-scfforall.mlir
    M mlir/test/lib/Interfaces/TilingInterface/TestTilingInterfaceTransformOps.cpp
    M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel

  Log Message:
  -----------
  [mlir][Linalg] Deprecate `linalg::tileToForallOp` and `linalg::tileToForallOpUsingTileSizes` (#91878)

The implementation of these methods are legacy and they are removed in
favor of using the `scf::tileUsingSCF` methods as replacements. To get
the latter on par with requirements of the deprecated methods, the
tiling allows one to specify the maximum number of tiles to use instead
of specifying the tile sizes. When tiling to `scf.forall` this
specification is used to generate the `num_threads` version of the
operation.

A slight deviation from previous implementation is that the deprecated
method always generated the `num_threads` variant of the `scf.forall`
operation. Instead now this is driven by the tiling options specified.
This reduces the indexing math generated when the tile sizes are
specified.

**Moving from `linalg::tileToForallOp` to `scf::tileUsingSCF`**

```
OpBuilder b;
TilingInterface op;
ArrayRef<OpFoldResult> numThreads;
ArrayAttr mapping;
FailureOr<ForallTilingResult> result =linalg::tileToForallOp(b, op, numThreads, mapping);
```

can be replaced by
```
scf::SCFTilingOptions options;
options.setNumThreads(numThreads);
options.setLoopType(scf::SCFTilingOptions::LoopType::ForallOp);
options.setMapping(mapping.getValue()); /*note the difference that setMapping takes an ArrayRef<Attribute> */
FailureOr<scf::SCFTilingResult> result = scf::tileUsingSCF(b, op, options);
```

This generates the `numThreads` version of the `scf.forall` for the
inter-tile loops, i.e.

```
... = scf.forall (%arg0, %arg1) in (%nt0, %nt1) shared_outs(...)
```

**Moving from `linalg::tileToForallOpUsingTileSizes` to
`scf::tileUsingSCF`**

```
OpBuilder b;
TilingInterface op;
ArrayRef<OpFoldResult> tileSizes;
ArrayAttr mapping;
FailureOr<ForallTilingResult> result =linalg::tileToForallOpUsingTileSizes(b, op, tileSizes, mapping);
```

can be replaced by
```
scf::SCFTilingOptions options;
options.setTileSizes(tileSizes);
options.setLoopType(scf::SCFTilingOptions::LoopType::ForallOp);
options.setMapping(mapping.getValue()); /*note the difference that setMapping takes an ArrayRef<Attribute> */
FailureOr<scf::SCFTilingResult> result = scf::tileUsingSCF(b, op, options);
```

Also note that `linalg::tileToForallOpUsingTileSizes` would effectively
call the `linalg::tileToForallOp` by computing the `numThreads` from the
`op` and `tileSizes` and generate the `numThreads` version of the
`scf.forall`. That is not the case anymore. Instead this will directly
generate the `tileSizes` version of the `scf.forall` op

```
... = scf.forall(%arg0, %arg1) = (%lb0, %lb1) to (%ub0, %ub1) step(%step0, %step1) shared_outs(...)
```

If you actually want to use the `numThreads` version, it is upto the
caller to compute the `numThreads` and set `options.setNumThreads`
instead of `options.setTileSizes`. Note that there is a slight
difference in the num threads version and tile size version. The former
requires an additional `affine.max` on the tile size to ensure
non-negative tile sizes. When lowering to `numThreads` version this
`affine.max` is not needed since by construction the tile sizes are
non-negative. In previous implementations, the `numThreads` version
generated when using the `linalg::tileToForallOpUsingTileSizes` method
would avoid generating the `affine.max` operation. To get the same
state, downstream users will have to additionally normalize the
`scf.forall` operation.

**Changes to `transform.structured.tile_using_forall`**

The transform dialect op that called into `linalg::tileToForallOp` and
`linalg::tileToForallOpUsingTileSizes` have been modified to call
`scf::tileUsingSCF`. The transform dialect op always generates the
`numThreads` version of the `scf.forall` op. So when `tile_sizes` are
specified for the transform dialect op, first the `tile_sizes` version
of the `scf.forall` is generated by the `scf::tileUsingSCF` method which
is then further normalized to get back to the same state. So there is no
functional change to `transform.structured.tile_using_forall`. It always
generates the `numThreads` version of the `scf.forall` op (as it did
before this change).

---------

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


  Commit: 2bf58f5d27a233e63e58d644ff7aff126ee99aa7
      https://github.com/llvm/llvm-project/commit/2bf58f5d27a233e63e58d644ff7aff126ee99aa7
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-07-31 (Wed, 31 Jul 2024)

  Changed paths:
    M clang/lib/Driver/ToolChains/Cuda.cpp
    M clang/test/Driver/cuda-cross-compiling.c
    M clang/tools/clang-nvlink-wrapper/ClangNVLinkWrapper.cpp
    M libc/cmake/modules/LLVMLibCLibraryRules.cmake
    M libc/startup/gpu/CMakeLists.txt

  Log Message:
  -----------
  [Clang] Suppress missing architecture error when doing LTO (#100652)

Summary:
The `nvlink-wrapper` can do LTO now, which means we can still create
some LLVM-IR without needing an architecture. In the case that we try to
invoke `nvlink` internally, that will still fail. This patch simply
defers the error until later so we can use `--lto-emit-llvm` to get the
IR without specifying an architecture.


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

  Changed paths:
    M lld/ELF/Config.h
    M lld/ELF/Driver.cpp
    M lld/ELF/SyntheticSections.cpp
    M lld/ELF/Writer.cpp
    M lld/docs/ReleaseNotes.rst
    M lld/docs/ld.lld.1
    M lld/test/CMakeLists.txt
    A lld/test/ELF/zsectionheader.s

  Log Message:
  -----------
  [ELF] Add -z nosectionheader

GNU ld since 2.41 supports this option, which is mildly useful. It omits
the section header table and non-ALLOC sections (including
.symtab/.strtab (--strip-all)).

This option is simple to implement and might be used by LLDB to test
program headers parsing without the section header table (#100900).

-z sectionheader, which is the default, is also added.

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


  Commit: bf5e56deba1e6d69f5ff0714fcade08c1329f882
      https://github.com/llvm/llvm-project/commit/bf5e56deba1e6d69f5ff0714fcade08c1329f882
  Author: Chris Apple <cja-private at pm.me>
  Date:   2024-07-31 (Wed, 31 Jul 2024)

  Changed paths:
    M llvm/CODE_OWNERS.TXT

  Log Message:
  -----------
  [NFC][LLVM] Add RealtimeSanitizer LLVM code owners (#101231)

Split from #100596


  Commit: 36264435071ecb5790d7944f0653c8195033135f
      https://github.com/llvm/llvm-project/commit/36264435071ecb5790d7944f0653c8195033135f
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-07-31 (Wed, 31 Jul 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/test/CodeGen/RISCV/rvv/vslide1down-constant-vl-rv32.ll
    M llvm/test/CodeGen/RISCV/rvv/vslide1up-constant-vl-rv32.ll

  Log Message:
  -----------
  [RISCV] Use X0 for VLMax for slide1up/slide1down in lowerVectorIntrinsicScalars. (#101384)

Previously, we created a vsetvlimax intrinsic. Using X0 simplifies the
code and enables some optimizations to kick when the exact value of
vlmax is known.


  Commit: 30b5d4a76357feebf4797d1d80bc9d5608c74a88
      https://github.com/llvm/llvm-project/commit/30b5d4a76357feebf4797d1d80bc9d5608c74a88
  Author: aaryanshukla <53713108+aaryanshukla at users.noreply.github.com>
  Date:   2024-07-31 (Wed, 31 Jul 2024)

  Changed paths:
    M libc/config/darwin/arm/entrypoints.txt
    M libc/config/darwin/x86_64/entrypoints.txt
    M libc/config/linux/aarch64/entrypoints.txt
    M libc/config/linux/arm/entrypoints.txt
    M libc/config/linux/riscv/entrypoints.txt
    M libc/config/linux/x86_64/entrypoints.txt
    M libc/config/windows/entrypoints.txt
    M libc/docs/math/index.rst
    M libc/spec/llvm_libc_ext.td
    M libc/spec/stdc.td
    M libc/src/math/CMakeLists.txt
    A libc/src/math/dfmaf128.h
    A libc/src/math/dfmal.h
    A libc/src/math/dsubf128.h
    A libc/src/math/dsubl.h
    M libc/src/math/generic/CMakeLists.txt
    A libc/src/math/generic/dfmaf128.cpp
    A libc/src/math/generic/dfmal.cpp
    A libc/src/math/generic/dsubf128.cpp
    A libc/src/math/generic/dsubl.cpp
    M libc/test/src/math/CMakeLists.txt
    A libc/test/src/math/dfmal_test.cpp
    A libc/test/src/math/dsubl_test.cpp
    M libc/test/src/math/smoke/CMakeLists.txt
    M libc/test/src/math/smoke/SubTest.h
    A libc/test/src/math/smoke/dfmaf128_test.cpp
    A libc/test/src/math/smoke/dfmal_test.cpp
    A libc/test/src/math/smoke/dsubf128_test.cpp
    A libc/test/src/math/smoke/dsubl_test.cpp
    M libc/utils/MPFRWrapper/MPFRUtils.cpp

  Log Message:
  -----------
  [libc][math][c23] Add dfma{l,f128} and dsub{l,f128} C23 math functions (#101089)

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


  Commit: 910012e7c5854a7e04e15a5a8750aad41b8bb137
      https://github.com/llvm/llvm-project/commit/910012e7c5854a7e04e15a5a8750aad41b8bb137
  Author: Sayhaan Siddiqui <49014204+sayhaan at users.noreply.github.com>
  Date:   2024-07-31 (Wed, 31 Jul 2024)

  Changed paths:
    M bolt/include/bolt/Core/DIEBuilder.h
    M bolt/lib/Core/DIEBuilder.cpp
    M bolt/lib/Rewrite/DWARFRewriter.cpp

  Log Message:
  -----------
  [BOLT][DWARF][NFC] Split DIEBuilder::finish (#101244)

Split DIEBuilder::finish so that code updating .debug_names is in a
separate function.


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

  Changed paths:
    M llvm/include/llvm/Transforms/Instrumentation/AddressSanitizer.h
    M llvm/include/llvm/Transforms/Instrumentation/DataFlowSanitizer.h
    M llvm/include/llvm/Transforms/Instrumentation/MemorySanitizer.h
    M llvm/include/llvm/Transforms/Instrumentation/ThreadSanitizer.h

  Log Message:
  -----------
  [sanitizer] Make file headers more conventional

Add "-*- C++ -*-"


  Commit: 9effefbae8d96006a4dd29bb9ab8532fd408559d
      https://github.com/llvm/llvm-project/commit/9effefbae8d96006a4dd29bb9ab8532fd408559d
  Author: Haowei Wu <haowei at google.com>
  Date:   2024-07-31 (Wed, 31 Jul 2024)

  Changed paths:
    M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/CMakeLists.txt
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedProcessPythonInterface.cpp
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedProcessPythonInterface.h
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedProcessPythonInterface/CMakeLists.txt
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedProcessPythonInterface/ScriptedProcessPythonInterface.cpp
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedProcessPythonInterface/ScriptedProcessPythonInterface.h
    M lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp

  Log Message:
  -----------
  Revert "[lldb] Reland 2402b3213c2f with `/H` to debug the windows build issue"

This reverts commit e72cdae47b4e263ea97b2bdd75cf44c1510cf3be, which broke
LLVM's lldb builder for Windows msvc.


  Commit: 7583c484c81218ab4c8c2fba2774cb518d8bbd43
      https://github.com/llvm/llvm-project/commit/7583c484c81218ab4c8c2fba2774cb518d8bbd43
  Author: Philip Reames <preames at rivosinc.com>
  Date:   2024-07-31 (Wed, 31 Jul 2024)

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

  Log Message:
  -----------
  [SCEV] Use power of two facts involving vscale when inferring wrap flags (#101380)

SCEV has logic for inferring wrap flags on AddRecs which are known to
control an exit based on whether the step is a power of two. This logic
only considered constants, and thus did not trigger for steps such as (4
x vscale) which are common in scalably vectorized loops.

The net effect is that we were very sensative to the preservation of
nsw/nuw flags on such IVs, and could not infer trip counts if they got
lost for any reason.

---------

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


  Commit: 2aa96fcf751ee948702e8447de62d6bea8235e3a
      https://github.com/llvm/llvm-project/commit/2aa96fcf751ee948702e8447de62d6bea8235e3a
  Author: Matthias Springer <me at m-sp.org>
  Date:   2024-07-31 (Wed, 31 Jul 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: Skip materializations when running without converter (#101318)

TODO: test case


  Commit: 951a36309787c39d102798c7b86b06caa1a35257
      https://github.com/llvm/llvm-project/commit/951a36309787c39d102798c7b86b06caa1a35257
  Author: Peiming Liu <peiming at google.com>
  Date:   2024-07-31 (Wed, 31 Jul 2024)

  Changed paths:
    M mlir/lib/Dialect/SparseTensor/Transforms/SparseIterationToScf.cpp
    M mlir/lib/Dialect/SparseTensor/Transforms/Sparsification.cpp
    M mlir/lib/Dialect/SparseTensor/Transforms/Utils/LoopEmitter.h
    M mlir/test/Dialect/SparseTensor/sparse_kernels_to_iterator.mlir

  Log Message:
  -----------
  [mlir][sparse] implement `sparse_tensor.extract_value` operation. (#101220)


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

  Changed paths:
    M llvm/utils/TableGen/Common/CodeGenDAGPatterns.h

  Log Message:
  -----------
  [TableGen] Pass ValueTypeByHwMode by const reference in a couple places. NFC

ValueTypeByHwMode contains a std::map. We shouldn't copy it if
we don't need to .

Fixes #101406.


  Commit: 24f8d1009e5359590a619cbbf596229ae5bfbbca
      https://github.com/llvm/llvm-project/commit/24f8d1009e5359590a619cbbf596229ae5bfbbca
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-07-31 (Wed, 31 Jul 2024)

  Changed paths:
    M llvm/utils/TableGen/Common/CodeGenDAGPatterns.h
    M llvm/utils/TableGen/GlobalISelEmitter.cpp

  Log Message:
  -----------
  [TableGen] Add an explicit cast to allow one TypeSetByHwMode constructor to be removed. NFC

This constructor was taking a ValueTypeByMode by value to create
an ArrayRef. By adding an explicit cast from ValueTypeByHwMode
to TypeSetByHwMode we allow the ArrayRef to be implicitly converted
from a single element.


  Commit: bf1666fb0bc19ffa18072e2727e4611c293a9aee
      https://github.com/llvm/llvm-project/commit/bf1666fb0bc19ffa18072e2727e4611c293a9aee
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-07-31 (Wed, 31 Jul 2024)

  Changed paths:
    M libcxx/.clang-format
    M libcxx/docs/ReleaseNotes/20.rst
    M libcxx/include/__atomic/atomic.h
    M libcxx/include/__atomic/atomic_base.h
    M libcxx/include/__atomic/atomic_flag.h
    M libcxx/include/__config
    M libcxx/include/atomic
    M libcxx/include/barrier
    M libcxx/include/latch
    M libcxx/include/semaphore
    M libcxx/test/std/atomics/atomics.types.generic/general.compile.pass.cpp
    M libcxx/test/std/atomics/atomics.types.generic/pointer.compile.pass.cpp
    M libcxx/test/std/atomics/atomics.types.operations/atomics.types.operations.wait/atomic_notify_all.pass.cpp
    M libcxx/test/std/atomics/atomics.types.operations/atomics.types.operations.wait/atomic_notify_one.pass.cpp
    M libcxx/test/std/atomics/atomics.types.operations/atomics.types.operations.wait/atomic_wait.pass.cpp
    M libcxx/test/std/atomics/atomics.types.operations/atomics.types.operations.wait/atomic_wait_explicit.pass.cpp
    M libcxx/test/std/thread/thread.barrier/arrive.pass.cpp
    M libcxx/test/std/thread/thread.barrier/arrive_and_drop.pass.cpp
    M libcxx/test/std/thread/thread.barrier/arrive_and_wait.pass.cpp
    M libcxx/test/std/thread/thread.barrier/completion.pass.cpp
    M libcxx/test/std/thread/thread.barrier/ctor.compile.pass.cpp
    M libcxx/test/std/thread/thread.barrier/max.pass.cpp
    M libcxx/test/std/thread/thread.latch/arrive_and_wait.pass.cpp
    M libcxx/test/std/thread/thread.latch/count_down.pass.cpp
    M libcxx/test/std/thread/thread.latch/ctor.pass.cpp
    M libcxx/test/std/thread/thread.latch/max.pass.cpp
    M libcxx/test/std/thread/thread.latch/try_wait.pass.cpp
    M libcxx/test/std/thread/thread.semaphore/acquire.pass.cpp
    M libcxx/test/std/thread/thread.semaphore/binary.pass.cpp
    M libcxx/test/std/thread/thread.semaphore/ctor.compile.pass.cpp
    M libcxx/test/std/thread/thread.semaphore/max.pass.cpp
    M libcxx/test/std/thread/thread.semaphore/release.pass.cpp
    M libcxx/test/std/thread/thread.semaphore/timed.pass.cpp
    M libcxx/test/std/thread/thread.semaphore/try_acquire.pass.cpp

  Log Message:
  -----------
  [libc++] Drop support for the C++20 Synchronization Library before C++20 (#82008)

When we initially implemented the C++20 synchronization library, we
reluctantly accepted for the implementation to be backported to C++03
upon request from the person who provided the patch. This was when we
were only starting to have experience with the issues this can create,
so we flinched. Nowadays, we have a much stricter stance about not
backporting features to previous standards.

We have recently started fixing several bugs (and near bugs) in our
implementation of the synchronization library. A recurring theme during
these reviews has been how difficult to understand the current code is,
and upon inspection it becomes clear that being able to use a few recent
C++ features (in particular lambdas) would help a great deal. The code
would still be pretty intricate, but it would be a lot easier to reason
about the flow of callbacks through things like
__thread_poll_with_backoff.

As a result, this patch drops support for the synchronization library
before C++20. This makes us more strictly conforming and opens the door
to major simplifications, in particular around atomic_wait which was
supported all the way to C++03.

This change will probably have some impact on downstream users, however
since the C++20 synchronization library was added only in LLVM 10 (~3
years ago) and it's quite a niche feature, the set of people trying to
use this part of the library before C++20 should be reasonably small.


  Commit: 38ef6929a3322fdddd74b3d6abdf6936cc4d8e62
      https://github.com/llvm/llvm-project/commit/38ef6929a3322fdddd74b3d6abdf6936cc4d8e62
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-07-31 (Wed, 31 Jul 2024)

  Changed paths:
    M libc/config/gpu/entrypoints.txt
    M libc/config/linux/riscv/entrypoints.txt
    M libc/config/linux/x86_64/entrypoints.txt
    M libc/newhdrgen/yaml/stdio.yaml
    M libc/spec/stdc.td
    M libc/src/stdio/CMakeLists.txt
    A libc/src/stdio/vsscanf.cpp
    A libc/src/stdio/vsscanf.h
    M libc/test/src/stdio/CMakeLists.txt
    A libc/test/src/stdio/vsscanf_test.cpp

  Log Message:
  -----------
  [libc] Add vsscanf function (#101402)

Summary:
Adds support for the `vsscanf` function similar to `sscanf`.
Based off of https://github.com/llvm/llvm-project/pull/97529.


  Commit: 785a24f1561c610ecbce7cdfbff053e0a3a7caec
      https://github.com/llvm/llvm-project/commit/785a24f1561c610ecbce7cdfbff053e0a3a7caec
  Author: Peiming Liu <peiming at google.com>
  Date:   2024-07-31 (Wed, 31 Jul 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/SparseTensor/IR/SparseTensor.h
    M mlir/include/mlir/Dialect/SparseTensor/IR/SparseTensorAttrDefs.td
    M mlir/include/mlir/Dialect/SparseTensor/IR/SparseTensorOps.td
    M mlir/lib/Dialect/SparseTensor/IR/SparseTensorDialect.cpp
    M mlir/lib/Dialect/SparseTensor/Transforms/SparseSpaceCollapse.cpp
    M mlir/test/Dialect/SparseTensor/invalid.mlir
    M mlir/test/Dialect/SparseTensor/roundtrip.mlir

  Log Message:
  -----------
  [mlir][sparse] introduce `sparse_tensor.coiterate` operation. (#101100)

This PR introduces `sparse_tensor.coiterate` operation, which represents
a loop that traverses multiple sparse iteration space.


  Commit: 26766a00ff946c281b7dd517b2ba8d594012c21e
      https://github.com/llvm/llvm-project/commit/26766a00ff946c281b7dd517b2ba8d594012c21e
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-07-31 (Wed, 31 Jul 2024)

  Changed paths:
    M llvm/test/CodeGen/RISCV/rvv/abs-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/bitreverse-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/bswap-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/commutable.ll
    M llvm/test/CodeGen/RISCV/rvv/ctpop-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/extractelt-int-rv32.ll
    M llvm/test/CodeGen/RISCV/rvv/extractelt-int-rv64.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-abs-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-bitreverse-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-bswap-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-calling-conv.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-ctlz-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-ctpop-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-cttz-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-extload-truncstore.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-extract-i1.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-extract-subvector.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vmacc-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vnmsac-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/insertelt-int-rv32.ll
    M llvm/test/CodeGen/RISCV/rvv/insertelt-int-rv64.ll
    M llvm/test/CodeGen/RISCV/rvv/legalize-store-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/mscatter-combine.ll
    M llvm/test/CodeGen/RISCV/rvv/regalloc-fast-crash.ll
    M llvm/test/CodeGen/RISCV/rvv/vlsegff-rv32-dead.ll
    M llvm/test/CodeGen/RISCV/rvv/vlsegff-rv64-dead.ll
    M llvm/test/CodeGen/RISCV/rvv/vmacc-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vmadd-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vnmsac-vp.ll

  Log Message:
  -----------
  [RISCV] Remove unncessary FP extensions from some integer only vector tests.

I'm going to do a review to make sure we are testing Zvfhmin instead of
Zvfh where clang expects it to work for half types, like loads/stores. Removing
unnecessary FP makes less things to review.


  Commit: 74f95794433f315a14bd6878d97877566863bc34
      https://github.com/llvm/llvm-project/commit/74f95794433f315a14bd6878d97877566863bc34
  Author: aaryanshukla <53713108+aaryanshukla at users.noreply.github.com>
  Date:   2024-07-31 (Wed, 31 Jul 2024)

  Changed paths:
    M libc/config/linux/arm/entrypoints.txt

  Log Message:
  -----------
  [libc][math][c23] removed dsubl for 32 arm (#101423)


  Commit: cf79aba99db4909437b8977a59c51bc8899ddb9c
      https://github.com/llvm/llvm-project/commit/cf79aba99db4909437b8977a59c51bc8899ddb9c
  Author: smanna12 <soumi.manna at intel.com>
  Date:   2024-07-31 (Wed, 31 Jul 2024)

  Changed paths:
    M clang/lib/AST/ASTContext.cpp
    M clang/lib/CodeGen/CodeGenModule.cpp

  Log Message:
  -----------
  [Clang] [NFC] Fix potential dereferencing of nullptr (#101405)

This patch replaces getAs with castAs and dyn_cast with cast to ensure
type safety and prevents potential null pointer dereferences. These
changes enforce compile-time checks for correct type casting in
ASTContext and CodeGenModule.


  Commit: 6f318d47bfba56df65394db6c20befe3ed5bf243
      https://github.com/llvm/llvm-project/commit/6f318d47bfba56df65394db6c20befe3ed5bf243
  Author: David Majnemer <david.majnemer at gmail.com>
  Date:   2024-07-31 (Wed, 31 Jul 2024)

  Changed paths:
    M llvm/lib/Target/NVPTX/NVPTXInstrInfo.td
    M llvm/test/CodeGen/NVPTX/math-intrins.ll

  Log Message:
  -----------
  [NVPTX] Make minimum/maximum work on older GPUs

We want to use newer instructions if we are targeting sufficiently new
SM and PTX versions. If we cannot use those newer instructions, let LLVM
synthesize the sequence from more fundamental instructions.


  Commit: ee0f43af2b344a7cd603a8564871c357d8fb108a
      https://github.com/llvm/llvm-project/commit/ee0f43af2b344a7cd603a8564871c357d8fb108a
  Author: Arthur Eubanks <aeubanks at google.com>
  Date:   2024-07-31 (Wed, 31 Jul 2024)

  Changed paths:
    M llvm/include/llvm/SandboxIR/SandboxIR.h

  Log Message:
  -----------
  [SandboxIR][NFC] Move BasicBlock class definition up (#101422)

To make future PRs smaller.


  Commit: a0d8fa5d3a7e05d30004dd4faeb45c1a96fd8769
      https://github.com/llvm/llvm-project/commit/a0d8fa5d3a7e05d30004dd4faeb45c1a96fd8769
  Author: Jiahan Xie <88367305+jiahanxie353 at users.noreply.github.com>
  Date:   2024-07-31 (Wed, 31 Jul 2024)

  Changed paths:
    M llvm/lib/CodeGen/GlobalISel/LegalityPredicates.cpp
    M llvm/lib/CodeGen/MIRParser/MIParser.cpp
    M llvm/lib/Target/RISCV/GISel/RISCVLegalizerInfo.cpp
    M llvm/lib/Target/RISCV/GISel/RISCVLegalizerInfo.h
    A llvm/test/CodeGen/RISCV/GlobalISel/legalizer/rvv/legalize-load.mir
    A llvm/test/CodeGen/RISCV/GlobalISel/legalizer/rvv/legalize-store.mir

  Log Message:
  -----------
  [RISCV][GlobalISel] Legalize Scalable Vector Loads and Stores (#84965)

This patch supports legalizing load and store instruction for scalable
vectors in RISCV


  Commit: 1c66ef915710fd4450f85ebb0486695e9bbc4dfc
      https://github.com/llvm/llvm-project/commit/1c66ef915710fd4450f85ebb0486695e9bbc4dfc
  Author: Jiahan Xie <88367305+jiahanxie353 at users.noreply.github.com>
  Date:   2024-07-31 (Wed, 31 Jul 2024)

  Changed paths:
    M llvm/lib/CodeGen/RegisterBankInfo.cpp
    M llvm/lib/Target/RISCV/GISel/RISCVRegisterBankInfo.cpp
    A llvm/test/CodeGen/RISCV/GlobalISel/regbankselect/rvv/load.mir
    A llvm/test/CodeGen/RISCV/GlobalISel/regbankselect/rvv/store.mir

  Log Message:
  -----------
  [GISEL][RISCV] RegBank Select for Scalable Vector Load/Store (#99932)

This patch supports GlobalISel for register bank selection for scalable vector
load and store instructions in RISC-V


  Commit: d5d1cf05499ba9a0adc192c723f622fc13ef9c0b
      https://github.com/llvm/llvm-project/commit/d5d1cf05499ba9a0adc192c723f622fc13ef9c0b
  Author: smanna12 <soumi.manna at intel.com>
  Date:   2024-07-31 (Wed, 31 Jul 2024)

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

  Log Message:
  -----------
  [NFC][Clang] Clean up VisitUnaryPlus by removing unused FP feature check (#101412)

This commit removes an unnecessary call to `E->hasStoredFPFeatures()`
within the `VisitUnaryPlus` function. The method's return value was not
being used, leading to a redundant operation. The removal of this line
streamlines the function and eliminates an unneeded check for stored
floating-point features.


  Commit: 65d3c220a184b11e41d6fc5853d865f3eb92b02e
      https://github.com/llvm/llvm-project/commit/65d3c220a184b11e41d6fc5853d865f3eb92b02e
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-07-31 (Wed, 31 Jul 2024)

  Changed paths:
    R llvm/test/CodeGen/RISCV/rvv/vsadd-rv32.ll
    R llvm/test/CodeGen/RISCV/rvv/vsadd-rv64.ll
    A llvm/test/CodeGen/RISCV/rvv/vsadd.ll
    R llvm/test/CodeGen/RISCV/rvv/vsaddu-rv32.ll
    R llvm/test/CodeGen/RISCV/rvv/vsaddu-rv64.ll
    A llvm/test/CodeGen/RISCV/rvv/vsaddu.ll
    R llvm/test/CodeGen/RISCV/rvv/vsmul-rv32.ll
    R llvm/test/CodeGen/RISCV/rvv/vsmul-rv64.ll
    A llvm/test/CodeGen/RISCV/rvv/vsmul.ll
    R llvm/test/CodeGen/RISCV/rvv/vssub-rv32.ll
    R llvm/test/CodeGen/RISCV/rvv/vssub-rv64.ll
    A llvm/test/CodeGen/RISCV/rvv/vssub.ll
    R llvm/test/CodeGen/RISCV/rvv/vssubu-rv32.ll
    R llvm/test/CodeGen/RISCV/rvv/vssubu-rv64.ll
    A llvm/test/CodeGen/RISCV/rvv/vssubu.ll

  Log Message:
  -----------
  [RISCV] Merge more rv32/rv64 intrinsic tests that have the same content. NFC


  Commit: 3403b593ae11e624ace8918a7840e85198f2ca3c
      https://github.com/llvm/llvm-project/commit/3403b593ae11e624ace8918a7840e85198f2ca3c
  Author: Sterling-Augustine <56981066+Sterling-Augustine at users.noreply.github.com>
  Date:   2024-07-31 (Wed, 31 Jul 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/include/llvm/SandboxIR/Use.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 PHINodes (#101111)

This patch implements sandboxir::PHINode which mirrors llvm::PHINode.

Based almost entirely on work by vporpo.


  Commit: 3a4c7cc56c07b2db9010c2228fc7cb2a43dd9b2d
      https://github.com/llvm/llvm-project/commit/3a4c7cc56c07b2db9010c2228fc7cb2a43dd9b2d
  Author: Amara Emerson <amara at apple.com>
  Date:   2024-07-31 (Wed, 31 Jul 2024)

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

  Log Message:
  -----------
  Forward declare OSSpinLockLock on MacOS since it's not shipped on the system. (#101392)

Fixes build errors on some SDKs.

rdar://132607572


  Commit: 307d1249ea635a78fcd347a65ddaa395cf64130e
      https://github.com/llvm/llvm-project/commit/307d1249ea635a78fcd347a65ddaa395cf64130e
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-07-31 (Wed, 31 Jul 2024)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp
    M llvm/test/CodeGen/LoongArch/ucmp.ll
    M llvm/test/CodeGen/RISCV/ucmp.ll

  Log Message:
  -----------
  [LegalizeTypes][RISCV][LoongArch] Optimize promotion of ucmp. (#101366)

ucmp can be promoted with either sext or zext. RISC-V and LoongArch
prefer sext for promoting i32 to i64 unless the inputs are known to be
zero extended already.

This patch uses the existing SExtOrZExtPromotedOperands function that is
used by SETCC promotion to intelligently handle this.


  Commit: 1c5f6cfc352c3bd2a4faa0e3aebb4028b557a5e7
      https://github.com/llvm/llvm-project/commit/1c5f6cfc352c3bd2a4faa0e3aebb4028b557a5e7
  Author: Justin Bogner <mail at justinbogner.com>
  Date:   2024-07-31 (Wed, 31 Jul 2024)

  Changed paths:
    M llvm/lib/Target/DirectX/DXILPrepare.cpp
    M llvm/lib/Target/DirectX/DXILPrettyPrinter.cpp
    M llvm/lib/Target/DirectX/DXILResourceAnalysis.cpp
    M llvm/lib/Target/DirectX/DXILResourceAnalysis.h
    M llvm/lib/Target/DirectX/DXILTranslateMetadata.cpp
    M llvm/lib/Target/DirectX/DirectX.h
    M llvm/lib/Target/DirectX/DirectXPassRegistry.def
    M llvm/lib/Target/DirectX/DirectXTargetMachine.cpp
    M llvm/test/CodeGen/DirectX/UAVMetadata.ll
    M llvm/test/CodeGen/DirectX/cbuf.ll

  Log Message:
  -----------
  [DirectX] Rename backend DXIL resource analysis passes to DXILResourceMD*. NFC

These passes will be replaced soon as we move to the target extension based
resource handling in the DirectX backend, but removing them now before the
replacement stuff is all up and running would be very disruptive. However, we
do need to move these passes out of the way to avoid symbol conflicts with the
new DXILResourceAnalysis in the Analysis library.

Note: I tried an even simpler hack in #100698 but it doesn't really work. A
rename is the most expedient path forward here.

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


  Commit: 5dbbc3b14bb04ef4bf2cbf4c23008f94f4253704
      https://github.com/llvm/llvm-project/commit/5dbbc3b14bb04ef4bf2cbf4c23008f94f4253704
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2024-07-31 (Wed, 31 Jul 2024)

  Changed paths:
    M lldb/source/Commands/CommandObjectBreakpointCommand.cpp
    M lldb/source/Commands/CommandObjectDisassemble.cpp
    M lldb/source/Commands/CommandObjectTarget.cpp
    M lldb/source/Commands/CommandObjectWatchpoint.cpp
    M lldb/source/Commands/CommandObjectWatchpoint.h
    M lldb/source/Commands/CommandObjectWatchpointCommand.cpp

  Log Message:
  -----------
  [lldb] Use Target references instead of pointers in CommandObject (NFC)

The GetTarget helper returns a Target reference so there's reason to
convert it to a pointer and check its validity.


  Commit: 87af9ee870ad7ca93abced0b09459c3760dec891
      https://github.com/llvm/llvm-project/commit/87af9ee870ad7ca93abced0b09459c3760dec891
  Author: Yeting Kuo <46629943+yetingk at users.noreply.github.com>
  Date:   2024-08-01 (Thu, 01 Aug 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVCodeGenPrepare.cpp
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-strided-vpload.ll
    M llvm/test/CodeGen/RISCV/rvv/strided-vpload.ll

  Log Message:
  -----------
  [RISCV] Use experimental.vp.splat to splat specific vector length elements. (#101329)

Previously, llvm IR is hard to create a scalable vector splat with a
specific vector length, so we use riscv.vmv.v.x and riscv.vmv.v.f to do
this work. But the two rvv intrinsics needs strict type constraint which
can not support fixed vector types and illegal vector types. Using
vp.splat could preserve old functionality and also generate more
optimized code for vector types and illegal vectors.
This patch also fixes crash for getEVT not serving ptr types.


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

  Changed paths:
    M llvm/include/llvm/CodeGen/ValueTypes.td
    M llvm/utils/TableGen/Common/CodeGenDAGPatterns.h
    M llvm/utils/TableGen/VTEmitter.cpp

  Log Message:
  -----------
  [TableGen][MVT] Lower the maximum 16-bit MVT from 16384 to 511. (#101401)

MachineValueTypeSet in tablegen allocates an array with a bit per MVT.
This used to be 256 bits, with the introduction of 16-bit MVT it
ballooned to 65536 bits. I suspect this is increasing the memory usage
of many of the data structures used by CodeGenDAGPatterns.

Since we don't need the full 16-bit range yet, this patch proposes
lowering the maximum MVT to 511 and using only 512 bits for
MachineValueTypeSet's storage.


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

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

  Log Message:
  -----------
  [RISCV][GISel] Slightly simplify the regbank selection for G_LOAD/STORE. NFC (#101431)

Merge the isVector early out with the previous check for isVector.


  Commit: bc6834f5c70daca7ec321398a16891800b1c2bd8
      https://github.com/llvm/llvm-project/commit/bc6834f5c70daca7ec321398a16891800b1c2bd8
  Author: Andrea 🦈 <anfaulds at amd.com>
  Date:   2024-07-31 (Wed, 31 Jul 2024)

  Changed paths:
    M mlir/utils/spirv/gen_spirv_dialect.py

  Log Message:
  -----------
  [mlir][spirv] Fix tablegen generator script's stripping of prefixes (#101378)

This script looks for existing definitions with the `SPIRV_` prefix, so
that it can preserve them when updating the file. When the commit
2d628330482e49d36744cb8f3fb5047cfeae6c56 changed the prefix from `SPV_`,
the number of characters to strip from matched names was not updated,
which broke this feature. This commit fixes remaining cases that weren't
fixed by 339c87a8a086347bd8b5aae8b5bc43fc1c155cc1.

The relationship of this script to the files it is meant to maintain is
still bitrotten in other ways.


  Commit: e6aeb3f4daea0ffd43930c63f9b9a7668b915fd9
      https://github.com/llvm/llvm-project/commit/e6aeb3f4daea0ffd43930c63f9b9a7668b915fd9
  Author: lifengxiang1025 <lifengxiang at kuaishou.com>
  Date:   2024-08-01 (Thu, 01 Aug 2024)

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

  Log Message:
  -----------
  [MemProf] Fix when function has indirect call (#101170)

When function has indirect call in LTO mode, it causes `assert(Alias)`
in `findProfiledCalleeThroughTailCalls`


  Commit: 9227fd74e49b045baba910cb07ee93b2c660d267
      https://github.com/llvm/llvm-project/commit/9227fd74e49b045baba910cb07ee93b2c660d267
  Author: vporpo <vporpodas at google.com>
  Date:   2024-07-31 (Wed, 31 Jul 2024)

  Changed paths:
    M llvm/unittests/SandboxIR/SandboxIRTest.cpp

  Log Message:
  -----------
  [SandboxIR][NFC] Factor out common test for CastInst subclasses (#101410)

The tests for most CastInst sub-classes, except AddrSpaceCastInst, are
very similar.
This patch creates a common template function for all of them.


  Commit: 42c413b48917491efc5372752c6ad245530939f5
      https://github.com/llvm/llvm-project/commit/42c413b48917491efc5372752c6ad245530939f5
  Author: Hideto Ueno <uenoku.tokotoko at gmail.com>
  Date:   2024-08-01 (Thu, 01 Aug 2024)

  Changed paths:
    M mlir/lib/Transforms/OpStats.cpp
    M mlir/lib/Transforms/PrintIR.cpp
    M mlir/lib/Transforms/ViewOpGraph.cpp

  Log Message:
  -----------
  [mlir][Transforms] Preserve all analysis in print passes (#101315)

PrintIRPass, PrintOpStatsPass and PrintOpGraphPass don't mutate IR so
preserve all analysis to save computation resource a bit.


  Commit: ed12f80ff0a8d304d10245c7bfb9f6af4a5c968c
      https://github.com/llvm/llvm-project/commit/ed12f80ff0a8d304d10245c7bfb9f6af4a5c968c
  Author: Job Henandez Lara <hj93 at protonmail.com>
  Date:   2024-07-31 (Wed, 31 Jul 2024)

  Changed paths:
    M libc/config/gpu/entrypoints.txt
    M libc/config/linux/aarch64/entrypoints.txt
    M libc/config/linux/arm/entrypoints.txt
    M libc/config/linux/riscv/entrypoints.txt
    M libc/config/linux/x86_64/entrypoints.txt
    M libc/docs/math/index.rst
    M libc/spec/stdc.td
    M libc/src/math/CMakeLists.txt
    M libc/src/math/generic/CMakeLists.txt
    A libc/src/math/generic/getpayload.cpp
    A libc/src/math/generic/getpayloadf.cpp
    A libc/src/math/generic/getpayloadf128.cpp
    A libc/src/math/getpayload.h
    A libc/src/math/getpayloadf.h
    A libc/src/math/getpayloadf128.h
    M libc/test/src/math/smoke/CMakeLists.txt
    A libc/test/src/math/smoke/getpayload_test.cpp
    A libc/test/src/math/smoke/getpayloadf128_test.cpp
    A libc/test/src/math/smoke/getpayloadf_test.cpp

  Log Message:
  -----------
  [libc][math][c23] add entrypoints and tests for getpayload{,f,f128} (#101285)


  Commit: 430b90f04533b099d788db2668176038be38c53b
      https://github.com/llvm/llvm-project/commit/430b90f04533b099d788db2668176038be38c53b
  Author: Wu Yingcong <yingcong.wu at intel.com>
  Date:   2024-08-01 (Thu, 01 Aug 2024)

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

  Log Message:
  -----------
  [nsan][NFC] Use cast when dyn_cast is not needed. (#101147)

Use `cast` instead to replace `dyn_cast` when `dyn_cast` is not
needed/not checked.


  Commit: 27b608055f8e86e2decea519e6dc1ab6aff4824e
      https://github.com/llvm/llvm-project/commit/27b608055f8e86e2decea519e6dc1ab6aff4824e
  Author: Pengcheng Wang <wangpengcheng.pp at bytedance.com>
  Date:   2024-08-01 (Thu, 01 Aug 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVInstrInfo.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfo.h
    M llvm/lib/Target/RISCV/RISCVProcessors.td
    M llvm/lib/Target/RISCV/RISCVSubtarget.h
    A llvm/test/CodeGen/RISCV/riscv-tail-dup-size.ll

  Log Message:
  -----------
  [RISCV] Increase default tail duplication threshold to 6 at -O3 (#98873)

This is just like AArch64.

Changing the threshold to 6 will increase the code size, but will
also decrease unconditional branches. CPUs with wide fetch/issue units
can benefit from it.

The value 6 may be debatable, we can set it to `SchedModel.IssueWidth`.


  Commit: 991a6215a9ccd99eb91d2b2d46b58c2fd648c263
      https://github.com/llvm/llvm-project/commit/991a6215a9ccd99eb91d2b2d46b58c2fd648c263
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-07-31 (Wed, 31 Jul 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/TargetLowering.h

  Log Message:
  -----------
  [TargetLowering] Remove weird use of MVT::isVoid in an assert. (#101436)

At the time this was written there were no vector types in MVT. The
order was:
-scalar integer types
-scalar FP types
-isVoid

I believe this isVoid check was to catch walking off the end of the
scalar FP types. While the isInteger()==isInteger caught walking off the
end of scalar integer types.

These days we have:
-scalar integer types
-scalar FP types
-fixed vector integer types
-fixed vector FP types
-scalable vector integer types
-scalable vector FP types.
-Glue
-isVoid

So checking isVoid doesn't detect what it used to. I've changed it to
check isFloatingPoint() == isFloatingPoint() instead.


  Commit: fb97b4f96217442c684a940558135ffbfe45b756
      https://github.com/llvm/llvm-project/commit/fb97b4f96217442c684a940558135ffbfe45b756
  Author: Amir Ayupov <aaupov at fb.com>
  Date:   2024-07-31 (Wed, 31 Jul 2024)

  Changed paths:
    M bolt/lib/Rewrite/RewriteInstance.cpp
    A bolt/test/timers.c

  Log Message:
  -----------
  [BOLT][NFC] Add timers for MetadataManager invocations



Test Plan: added bolt/test/timers.c

Reviewers: ayermolo, maksfb, rafaelauler, dcci

Reviewed By: dcci

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


  Commit: 3f51bec466c4b67814a7877859ba3eeb5f80da7a
      https://github.com/llvm/llvm-project/commit/3f51bec466c4b67814a7877859ba3eeb5f80da7a
  Author: Amir Ayupov <aaupov at fb.com>
  Date:   2024-07-31 (Wed, 31 Jul 2024)

  Changed paths:
    M bolt/lib/Rewrite/RewriteInstance.cpp
    M bolt/test/timers.c

  Log Message:
  -----------
  [BOLT][NFC] Print timers in perf2bolt invocation

When BOLT is run in AggregateOnly mode (perf2bolt), it exits with code
zero so destructors are not run thus TimerGroup never prints the timers.

Add explicit printing just before the exit to honor options requesting
timers (`--time-rewrite`, `--time-aggr`).

Test Plan: updated bolt/test/timers.c

Reviewers: ayermolo, maksfb, rafaelauler, dcci

Reviewed By: dcci

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


  Commit: 9d068f7137a2ad732d008df46eb71aadb0cd8a8e
      https://github.com/llvm/llvm-project/commit/9d068f7137a2ad732d008df46eb71aadb0cd8a8e
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-07-31 (Wed, 31 Jul 2024)

  Changed paths:
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vselect-vp-bf16.ll
    M llvm/test/CodeGen/RISCV/rvv/vle.ll
    M llvm/test/CodeGen/RISCV/rvv/vse.ll
    M llvm/test/CodeGen/RISCV/rvv/vselect-vp-bf16.ll

  Log Message:
  -----------
  [RISCV] Remove Zfbfmin from some vector test RUN lines. NFC


  Commit: 86815a1842d308521f46048bb9ed08e47c0d8357
      https://github.com/llvm/llvm-project/commit/86815a1842d308521f46048bb9ed08e47c0d8357
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-08-01 (Thu, 01 Aug 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPURegisterBankInfo.cpp
    M llvm/test/CodeGen/AMDGPU/GlobalISel/crash-stack-address-O0.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/flat-scratch-init.gfx.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/flat-scratch.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/insertelement-stack-lower.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-frame-index.mir
    M llvm/test/CodeGen/AMDGPU/codegen-prepare-addrspacecast-non-null.ll
    M llvm/test/CodeGen/AMDGPU/flat-scratch-svs.ll

  Log Message:
  -----------
  AMDGPU/GlobalISel: Permit mapping G_FRAME_INDEX to sgprs (#101325)

eliminateFrameIndex should now properly handle materializing
frame indices in SGPRs, so treat this like the other constant
operand types.

On average this will produce worse code; we need to detect
VGPR uses, and improve SGPR->VGPR frame index folds.


  Commit: 72ed80866fcfe1366ab49995d23782e8566cec43
      https://github.com/llvm/llvm-project/commit/72ed80866fcfe1366ab49995d23782e8566cec43
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-07-31 (Wed, 31 Jul 2024)

  Changed paths:
    M llvm/lib/CodeGen/MIRParser/MIParser.cpp

  Log Message:
  -----------
  [MIR] Remove separate Size variable from parseMachineMemoryOperand. NFC (#101453)

Size is updated in sync with MemoryType. Instead of maintaining a
separate Size, use the size from MemoryType where needed.


  Commit: 129a8e1b756aa4e5932169ed2f1f7dbad692f44d
      https://github.com/llvm/llvm-project/commit/129a8e1b756aa4e5932169ed2f1f7dbad692f44d
  Author: Marina <173714676+citymarina at users.noreply.github.com>
  Date:   2024-08-01 (Thu, 01 Aug 2024)

  Changed paths:
    A llvm/test/CodeGen/AArch64/peephole-csel.ll
    A llvm/test/CodeGen/AArch64/peephole-csel.mir

  Log Message:
  -----------
  [AArch64] Add tests for redundant csel instructions. NFC (#101014)


  Commit: 972c02929ba61bd34417700d77605d8fd3f36de7
      https://github.com/llvm/llvm-project/commit/972c02929ba61bd34417700d77605d8fd3f36de7
  Author: Pierre van Houtryve <pierre.vanhoutryve at amd.com>
  Date:   2024-08-01 (Thu, 01 Aug 2024)

  Changed paths:
    M llvm/docs/GlobalISel/MIRPatterns.rst
    M llvm/include/llvm/CodeGen/GlobalISel/GIMatchTableExecutor.h
    M llvm/include/llvm/CodeGen/GlobalISel/GIMatchTableExecutorImpl.h
    M llvm/include/llvm/Target/GlobalISel/Combine.td
    M llvm/test/TableGen/GlobalISelCombinerEmitter/match-table-variadics.td
    M llvm/test/TableGen/GlobalISelCombinerEmitter/operand-types.td
    M llvm/test/TableGen/GlobalISelCombinerEmitter/typeof-errors.td
    A llvm/test/TableGen/GlobalISelCombinerEmitter/variadic-errors.td
    M llvm/utils/TableGen/Common/GlobalISel/CodeExpander.h
    M llvm/utils/TableGen/Common/GlobalISel/GlobalISelMatchTable.cpp
    M llvm/utils/TableGen/Common/GlobalISel/GlobalISelMatchTable.h
    M llvm/utils/TableGen/Common/GlobalISel/Patterns.cpp
    M llvm/utils/TableGen/Common/GlobalISel/Patterns.h
    M llvm/utils/TableGen/GlobalISelCombinerEmitter.cpp
    M llvm/utils/TableGen/GlobalISelEmitter.cpp

  Log Message:
  -----------
  [GlobalISel][TableGen] MIR Pattern Variadics (#100563)

Allow for matching & rewriting a variable number of arguments in an
instructions.

Solves #87459


  Commit: 04e8433165de66fa8514ef2db53d9f6dd7c244c0
      https://github.com/llvm/llvm-project/commit/04e8433165de66fa8514ef2db53d9f6dd7c244c0
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-07-31 (Wed, 31 Jul 2024)

  Changed paths:
    M llvm/test/CodeGen/RISCV/rvv/vle.ll
    M llvm/test/CodeGen/RISCV/rvv/vleff.ll
    M llvm/test/CodeGen/RISCV/rvv/vloxei-rv64.ll
    M llvm/test/CodeGen/RISCV/rvv/vloxei.ll
    M llvm/test/CodeGen/RISCV/rvv/vlse.ll
    M llvm/test/CodeGen/RISCV/rvv/vluxei-rv64.ll
    M llvm/test/CodeGen/RISCV/rvv/vluxei.ll
    M llvm/test/CodeGen/RISCV/rvv/vse.ll
    M llvm/test/CodeGen/RISCV/rvv/vsoxei-rv64.ll
    M llvm/test/CodeGen/RISCV/rvv/vsoxei.ll
    M llvm/test/CodeGen/RISCV/rvv/vsse.ll
    M llvm/test/CodeGen/RISCV/rvv/vsuxei-rv64.ll
    M llvm/test/CodeGen/RISCV/rvv/vsuxei.ll

  Log Message:
  -----------
  [RISCV] Add vector bf16 load/store intrinsic tests. NFC

This adds bf16 to the unit stride, strided, and index load and
store intrinsics. clang already assumes these work with Zvfbfmin.


  Commit: 84a3739ac072c95af9fa80e36d9e0f52d11e28eb
      https://github.com/llvm/llvm-project/commit/84a3739ac072c95af9fa80e36d9e0f52d11e28eb
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-07-31 (Wed, 31 Jul 2024)

  Changed paths:
    M llvm/test/CodeGen/RISCV/rvv/vle.ll
    M llvm/test/CodeGen/RISCV/rvv/vleff.ll
    M llvm/test/CodeGen/RISCV/rvv/vloxei-rv64.ll
    M llvm/test/CodeGen/RISCV/rvv/vloxei.ll
    M llvm/test/CodeGen/RISCV/rvv/vlse.ll
    M llvm/test/CodeGen/RISCV/rvv/vluxei-rv64.ll
    M llvm/test/CodeGen/RISCV/rvv/vluxei.ll
    M llvm/test/CodeGen/RISCV/rvv/vse.ll
    M llvm/test/CodeGen/RISCV/rvv/vsoxei-rv64.ll
    M llvm/test/CodeGen/RISCV/rvv/vsoxei.ll
    M llvm/test/CodeGen/RISCV/rvv/vsse.ll
    M llvm/test/CodeGen/RISCV/rvv/vsuxei.ll

  Log Message:
  -----------
  [RISCV] Replace Zvfh with Zvfhmin on vector load/store intrinsic tests. NFC

clang uses these with Zvfhmin so we should test them.


  Commit: ab33c3dd65ab9b2101e42eaa05ed781a21753f65
      https://github.com/llvm/llvm-project/commit/ab33c3dd65ab9b2101e42eaa05ed781a21753f65
  Author: pvanhout <pierre.vanhoutryve at amd.com>
  Date:   2024-08-01 (Thu, 01 Aug 2024)

  Changed paths:
    M llvm/test/TableGen/GlobalISelCombinerEmitter/variadic-errors.td

  Log Message:
  -----------
  [GlobalISel][TableGen] Make variadic-errors.td test more robust

Use a regex instead of hardcoded numbers for anonymous pattern suffixes.


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

  Changed paths:
    M clang/lib/CodeGen/CodeGenModule.cpp
    A clang/test/Modules/inline-builtins.cppm

  Log Message:
  -----------
  [C++20] [Modules] Always emit the inline builtins (#101278)

See the attached test for the motivation example. If we're too greedy to
not emit the definition for inline builtins, we may meet a middle end
crash. And it should be good to emit inline builtins always.


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

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp

  Log Message:
  -----------
  AMDGPU: Cleanup extract_subvector actions (NFC) (#101454)

The base AMDGPUISelLowering was setting custom action on 16-bit
vector types, but also set in SIISelLowering.


  Commit: fdce0bfb7f84dc3a29acaefe04ee2f3d75d52c46
      https://github.com/llvm/llvm-project/commit/fdce0bfb7f84dc3a29acaefe04ee2f3d75d52c46
  Author: Luke Lau <luke at igalia.com>
  Date:   2024-08-01 (Thu, 01 Aug 2024)

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

  Log Message:
  -----------
  [RISCV] Add back missing vmv_v_x_vl pattern predicates (#101455)

Looks like these got left behind in
17e2d07ad15e02c9c757fdd4a532c43747ed8bf3


  Commit: 7088a5ed880f29129ec844c66068e8cb61ca98bf
      https://github.com/llvm/llvm-project/commit/7088a5ed880f29129ec844c66068e8cb61ca98bf
  Author: Dimitry Andric <dimitry at andric.com>
  Date:   2024-08-01 (Thu, 01 Aug 2024)

  Changed paths:
    M lldb/source/Plugins/Process/FreeBSD/NativeRegisterContextFreeBSD_arm.h
    M lldb/source/Plugins/Process/FreeBSD/NativeRegisterContextFreeBSD_mips64.h
    M lldb/source/Plugins/Process/FreeBSD/NativeRegisterContextFreeBSD_powerpc.h

  Log Message:
  -----------
  [lldb][FreeBSD] Fix NativeRegisterContextFreeBSD_{arm,mips64,powerpc} declarations (#101403)

Similar to #97796, fix the type of the `native_thread` parameter for the
arm, mips64 and powerpc variants of `NativeRegisterContextFreeBSD_*`.

Otherwise, this leads to compile errors similar to:

```
lldb/source/Plugins/Process/FreeBSD/NativeRegisterContextFreeBSD_powerpc.cpp:85:39: error: out-of-line definition of 'NativeRegisterContextFreeBSD_powerpc' does not match any declaration in 'lldb_private::process_freebsd::NativeRegisterContextFreeBSD_powerpc'
   85 | NativeRegisterContextFreeBSD_powerpc::NativeRegisterContextFreeBSD_powerpc(
      |                                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```


  Commit: 17ba4f4053e303be3e5408d34eaf687a49cefb06
      https://github.com/llvm/llvm-project/commit/17ba4f4053e303be3e5408d34eaf687a49cefb06
  Author: Adrian Kuegel <akuegel at google.com>
  Date:   2024-08-01 (Thu, 01 Aug 2024)

  Changed paths:
    M mlir/lib/Transforms/Utils/DialectConversion.cpp
    M mlir/test/Transforms/test-legalize-type-conversion.mlir

  Log Message:
  -----------
  Revert "[mlir][Transforms] Dialect conversion: Skip materializations when running without converter (#101318)"

This reverts commit 2aa96fcf751ee948702e8447de62d6bea8235e3a.

This was merged without a test. Also it seems it was only fixing an
issue for users which used a particular workaround that is not actually
needed anymore (skipping UnrealizedConversionCast operands).


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

  Changed paths:
    M libcxx/test/libcxx/utilities/any/allocator.pass.cpp
    M libcxx/test/libcxx/utilities/format/enable_insertable.compile.pass.cpp
    M libcxx/test/std/concepts/concepts.lang/concept.common/common_with.compile.pass.cpp
    M libcxx/test/std/concepts/concepts.lang/concept.commonref/common_reference.compile.pass.cpp
    M libcxx/test/std/containers/Emplaceable.h
    M libcxx/test/std/containers/NotConstructible.h
    M libcxx/test/std/containers/container.node/node_handle.pass.cpp
    M libcxx/test/std/containers/unord/unord.map/compare.pass.cpp
    M libcxx/test/std/containers/unord/unord.map/unord.map.modifiers/insert_or_assign.pass.cpp
    M libcxx/test/std/containers/unord/unord.map/unord.map.modifiers/try.emplace.pass.cpp
    M libcxx/test/std/diagnostics/syserr/is_error_code_enum.pass.cpp
    M libcxx/test/std/diagnostics/syserr/is_error_condition_enum.pass.cpp
    M libcxx/test/std/diagnostics/syserr/syserr.errcode/syserr.errcode.constructors/ErrorCodeEnum.pass.cpp
    M libcxx/test/std/diagnostics/syserr/syserr.errcode/syserr.errcode.constructors/lwg3629.pass.cpp
    M libcxx/test/std/diagnostics/syserr/syserr.errcode/syserr.errcode.modifiers/ErrorCodeEnum.pass.cpp
    M libcxx/test/std/diagnostics/syserr/syserr.errcode/syserr.errcode.modifiers/lwg3629.pass.cpp
    M libcxx/test/std/diagnostics/syserr/syserr.errcondition/syserr.errcondition.constructors/lwg3629.pass.cpp
    M libcxx/test/std/diagnostics/syserr/syserr.errcondition/syserr.errcondition.modifiers/lwg3629.pass.cpp
    M libcxx/test/std/experimental/utilities/propagate_const/propagate_const.nonmembers/hash.pass.cpp
    M libcxx/test/std/iterators/iterator.requirements/iterator.concepts/iterator.concept.readable/indirectly_readable.compile.pass.cpp
    M libcxx/test/std/localization/locale.categories/category.numeric/locale.num.get/user_defined_char_type.pass.cpp
    M libcxx/test/std/ranges/range.utility/range.subrange/ctor.range_size.pass.cpp
    M libcxx/test/std/strings/basic.string/string.modifiers/string_append/push_back.pass.cpp
    M libcxx/test/std/time/rep.h
    M libcxx/test/std/utilities/memory/allocator.traits/allocator.traits.types/difference_type.pass.cpp
    M libcxx/test/std/utilities/memory/allocator.traits/allocator.traits.types/size_type.pass.cpp
    M libcxx/test/std/utilities/meta/meta.trans/meta.trans.other/common_reference.compile.pass.cpp
    M libcxx/test/std/utilities/meta/meta.trans/meta.trans.other/common_type.pass.cpp
    M libcxx/test/std/utilities/optional/optional.hash/hash.pass.cpp
    M libcxx/test/std/utilities/tuple/tuple.tuple/tuple.helper/tuple_size_incomplete.pass.cpp
    M libcxx/test/std/utilities/utility/pairs/pairs.pair/ctor.pair_like.pass.cpp
    M libcxx/test/std/utilities/variant/variant.hash/hash.pass.cpp
    M libcxx/test/std/utilities/variant/variant.visit.member/visit.pass.cpp
    M libcxx/test/std/utilities/variant/variant.visit/visit.pass.cpp
    M libcxx/test/support/Counter.h

  Log Message:
  -----------
  [libc++][NFC] Avoid opening namespace std in the tests (#94160)

This also adds a few FIXMEs where we use UB in the tests.


  Commit: f51a479520be75dec8117a0a6039604d8282ee38
      https://github.com/llvm/llvm-project/commit/f51a479520be75dec8117a0a6039604d8282ee38
  Author: WANG Rui <wangrui at loongson.cn>
  Date:   2024-08-01 (Thu, 01 Aug 2024)

  Changed paths:
    M llvm/test/CodeGen/LoongArch/unaligned-memcpy-inline.ll

  Log Message:
  -----------
  [LoongArch] Pre-commit test for aligning stack objects passed to memory intrinsics. NFC


  Commit: 4f42deb5f4fde1676e7cf3ddc54e44e0f4a89760
      https://github.com/llvm/llvm-project/commit/4f42deb5f4fde1676e7cf3ddc54e44e0f4a89760
  Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
  Date:   2024-08-01 (Thu, 01 Aug 2024)

  Changed paths:
    M llvm/lib/Transforms/Utils/SimplifyLibCalls.cpp
    A llvm/test/Transforms/InstCombine/nan.ll
    A llvm/test/Transforms/InstCombine/nanl-fp128.ll
    A llvm/test/Transforms/InstCombine/nanl-fp80.ll
    A llvm/test/Transforms/InstCombine/nanl-ppc-fp128.ll

  Log Message:
  -----------
  [SimplifyLibCalls] Constant fold nan libcall (#101459)

Reference: https://en.cppreference.com/w/c/numeric/math/nan
The logic is copied from clang frontend:


https://github.com/llvm/llvm-project/blob/1d2b2d29d733200b704f38d220d22ecc07d6cf42/clang/lib/AST/ExprConstant.cpp#L14741-L14777

---------

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


  Commit: f3761a4bd320e4334315c87b55f882a4ba864caa
      https://github.com/llvm/llvm-project/commit/f3761a4bd320e4334315c87b55f882a4ba864caa
  Author: Dmitry Polukhin <34227995+dmpolukhin at users.noreply.github.com>
  Date:   2024-08-01 (Thu, 01 Aug 2024)

  Changed paths:
    M clang/lib/Serialization/ASTReader.cpp
    A clang/test/Headers/stdarg-cxx-modules.cpp

  Log Message:
  -----------
  [C++20][Modules] Allow using stdarg.h with header units (#100739)

Summary:
Macro like `va_start`/`va_end` marked as builtin functions that makes
these identifiers special and it results in redefinition of the
identifiers as builtins and it hides macro definitions during preloading
C++ modules. In case of modules Clang ignores special identifiers but
`PP.getCurrentModule()` was not set. This diff fixes IsModule detection
logic for this particular case.

Test Plan: check-clang

---------

Co-authored-by: Chuanqi Xu <yedeng.yd at linux.alibaba.com>


  Commit: 65c000a1e5a2a1c79eb5e022c3dc51b239691153
      https://github.com/llvm/llvm-project/commit/65c000a1e5a2a1c79eb5e022c3dc51b239691153
  Author: Owen Anderson <resistor at mac.com>
  Date:   2024-07-31 (Wed, 31 Jul 2024)

  Changed paths:
    M llvm/include/llvm/Support/Allocator.h

  Log Message:
  -----------
  Simplify hot-path size computations in BumpPtrAllocator. (#101312)

~0.1% instruction count improvements


https://llvm-compile-time-tracker.com/compare.php?from=07d2709a17860a202d91781769a88837e4fb5f2a&to=d5cc47831ecd9f0a2b164b16da67f74b94e9aafc&stat=instructions:u


  Commit: 3611c0b7038a8a11796f22fbd063074624b89081
      https://github.com/llvm/llvm-project/commit/3611c0b7038a8a11796f22fbd063074624b89081
  Author: Carl Ritson <carl.ritson at amd.com>
  Date:   2024-08-01 (Thu, 01 Aug 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIWholeQuadMode.cpp
    M llvm/test/CodeGen/AMDGPU/wqm.ll

  Log Message:
  -----------
  [AMDGPU] SIWholeQuadMode: avoid execz effects in exact regions (#101157)

Exact mode regions within WQM may have EXEC=0 in divergent control flow.
This occurs if a branch is only taken by helper lanes and an instruction
requiring WQM disabling is encountered.

The current code extends the exact region as far as possible; however,
this can result in it including instructions with unwanted side effects
at EXEC=0.
In particular readfirstlane combined with scalar loads can produce
invalid memory accesses in this circumstance.

Workaround this by shrinking exact regions to only the instructions
requiring WQM disabling when unwanted side effects are present.
Eventually we should branch over these regions when EXEC=0, but this
requires visibility of CFG/divergence information not currently
available.


  Commit: bbadbf751ec03b88b3348607c5e57c6b7416cebb
      https://github.com/llvm/llvm-project/commit/bbadbf751ec03b88b3348607c5e57c6b7416cebb
  Author: Kareem Ergawy <kareem.ergawy at amd.com>
  Date:   2024-08-01 (Thu, 01 Aug 2024)

  Changed paths:
    M flang/lib/Lower/OpenMP/DataSharingProcessor.cpp
    A flang/test/Lower/OpenMP/DelayedPrivatization/equivalence.f90
    M mlir/test/Target/LLVMIR/openmp-private.mlir

  Log Message:
  -----------
  [flang][OpenMP] Delayed privatization for variables with `equivalence` association (#100531)

Handles variables that are storage associated via `equivalence`. The
problem is that these variables are declared as `fir.ptr`s while their
privatized storage is declared as `fir.ref` which was triggering a
validation error in the OpenMP dialect.


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

  Changed paths:
    M clang/test/CXX/drs/cwg8xx.cpp
    M clang/www/cxx_dr_status.html

  Log Message:
  -----------
  [clang][NFC] Add CWG882 test (Defining `main` as deleted) (#101382)

https://cplusplus.github.io/CWG/issues/882.html

This was implemented for Clang 3.5 by
b63b6ee9a00ef0710d899df6cfda78a1b8bd762a


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

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

  Log Message:
  -----------
  [mlir][vector] Add tests xfer-permute-lowering (nfc)(2/n) (#96033)

Adds more tests to:
  * vector-transfer-permutation-lowering.mlir

Specifically, adds tests for:
  * out-of-bounds access for the `TransferWritePermutationLowering`
    pattern
  * in-bounds access for `TransferWriteNonPermutationLowering` +
    `TransferWritePermutationLowering`

Also renames `@permutation_with_mask_xfer_write_fixed_width` as
`@xfer_write_non_transposing_permutation_map`.

This is a part of a larger effort to make sure that all key cases for
patterns under populateVectorTransferPermutationMapLoweringPatterns
(*) are tested. I also want to make sure that tests use consistent
function and variable names.

(*) transform.apply_patterns.vector.transfer_permutation_patterns in
TD parlance)


  Commit: 67730ae19c6bcb08dca292e0576b6cd55a843932
      https://github.com/llvm/llvm-project/commit/67730ae19c6bcb08dca292e0576b6cd55a843932
  Author: Owen Anderson <resistor at mac.com>
  Date:   2024-08-01 (Thu, 01 Aug 2024)

  Changed paths:
    M llvm/include/llvm/Support/Allocator.h

  Log Message:
  -----------
  Revert "Simplify hot-path size computations in BumpPtrAllocator. (#101312)"

This reverts commit 65c000a1e5a2a1c79eb5e022c3dc51b239691153.


  Commit: 05d3f5ed910f5bb96962bf913c9d4fe5ab7abec9
      https://github.com/llvm/llvm-project/commit/05d3f5ed910f5bb96962bf913c9d4fe5ab7abec9
  Author: sbite0138 <sbite0138 at gmail.com>
  Date:   2024-08-01 (Thu, 01 Aug 2024)

  Changed paths:
    M llvm/test/Transforms/LowerMatrixIntrinsics/multiply-double-row-major.ll
    M llvm/test/Transforms/LowerMatrixIntrinsics/multiply-double.ll
    M llvm/test/Transforms/LowerMatrixIntrinsics/multiply-i32-row-major.ll
    M llvm/test/Transforms/LowerMatrixIntrinsics/multiply-i32.ll

  Log Message:
  -----------
  [LowerMatrixIntrinsics] Fix type suffix for matrix.multiply.* (#100940)

Based on the [proposal
PDF](https://llvm.org/devmtg/2020-09/slides/Hahn-Matrix_Support_in_LLVM_and_Clang.pdf)
and the test code under
[llvm/test/Transforms/LowerMatrixIntrinsics](https://github.com/llvm/llvm-project/tree/main/llvm/test/Transforms/LowerMatrixIntrinsics),
the suffix for the `@llvm.matrix.multiply.*` intrinsic should be {output
matrix type}.{input matrix 1 type}.{input matrix 2 type} (e.g.,
`@llvm.matrix.multiply.v4i32.v4i32.v4i32`).

This PR corrects the places where these suffixes do not follow the
aforementioned format.


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

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

  Log Message:
  -----------
  [clang][analyzer] Improve PointerSubChecker (#96501)

The checker could report false positives if pointer arithmetic was done
on pointers to non-array data before pointer subtraction. Another
problem is fixed that could cause false positive if members of the same
structure but in different memory objects are subtracted.


  Commit: 2d3655037ccfa276cb0949c2ce0cff56985f6637
      https://github.com/llvm/llvm-project/commit/2d3655037ccfa276cb0949c2ce0cff56985f6637
  Author: Xing Xue <xingxue at outlook.com>
  Date:   2024-08-01 (Thu, 01 Aug 2024)

  Changed paths:
    M libcxx/test/libcxx/vendor/ibm/bad_function_call.pass.cpp
    M libcxxabi/test/vendor/ibm/aix_xlclang_nested_excp_32.pass.sh.s
    M libcxxabi/test/vendor/ibm/aix_xlclang_nested_excp_64.pass.sh.s
    M libcxxabi/test/vendor/ibm/aix_xlclang_passing_excp_obj_32.pass.sh.S
    M libcxxabi/test/vendor/ibm/aix_xlclang_passing_excp_obj_64.pass.sh.S
    M libcxxabi/test/vendor/ibm/cond_reg_restore.pass.cpp
    M libcxxabi/test/vendor/ibm/vec_reg_restore.pass.cpp
    M libunwind/test/aix_signal_unwind.pass.sh.S

  Log Message:
  -----------
  [NFC][libc++][libc++abi][libunwind][test] Fix/unify AIX triples used in LIT tests (#101196)

This patch fixes/unifies AIX target triples used in libc++, libc++abi,
and libunwind LIT tests.


  Commit: 0a5e5728fbb61d7c775aabc8048b7b629e9ca2d2
      https://github.com/llvm/llvm-project/commit/0a5e5728fbb61d7c775aabc8048b7b629e9ca2d2
  Author: joshua-arch1 <68843032+joshua-arch1 at users.noreply.github.com>
  Date:   2024-08-01 (Thu, 01 Aug 2024)

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

  Log Message:
  -----------
  [Inliner] Fix bugs for partial inlining with vector

In the cost model of partial inlining, cost for intrinsics will be applied. However, some intrinsics for vector have invalid cost, which is not allowed for partial inlining. Instead of assertion, we directly do not do partial inlining  in this circumstance to avoid compiling errors.


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

  Changed paths:
    M libc/utils/gpu/loader/CMakeLists.txt
    M libc/utils/gpu/loader/amdgpu/CMakeLists.txt
    R libc/utils/gpu/loader/amdgpu/Loader.cpp
    A libc/utils/gpu/loader/amdgpu/amdhsa-loader.cpp
    M libc/utils/gpu/loader/nvptx/CMakeLists.txt
    R libc/utils/gpu/loader/nvptx/Loader.cpp
    A libc/utils/gpu/loader/nvptx/nvptx-loader.cpp

  Log Message:
  -----------
  [libc] Change the GPU loaders to LLVM executables (#101442)

Summary:
I am going to rework these tools to just me LLVM tools. This patch is
pretty much NFC to set up the CMake for that.


  Commit: 241a05af0c2324eb073747d42466b9dde229655f
      https://github.com/llvm/llvm-project/commit/241a05af0c2324eb073747d42466b9dde229655f
  Author: joshua-arch1 <68843032+joshua-arch1 at users.noreply.github.com>
  Date:   2024-08-01 (Thu, 01 Aug 2024)

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

  Log Message:
  -----------
  Revert "[Inliner] Fix bugs for partial inlining with vector"

This reverts commit https://github.com/llvm/llvm-project/commit/0a5e5728fbb61d7c775aabc8048b7b629e9ca2d2,
since I forgot to start a pull request.


  Commit: 097a1d28ed6654f1297feb9cb80890c7dffa2864
      https://github.com/llvm/llvm-project/commit/097a1d28ed6654f1297feb9cb80890c7dffa2864
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-08-01 (Thu, 01 Aug 2024)

  Changed paths:
    M libc/utils/gpu/loader/CMakeLists.txt

  Log Message:
  -----------
  [libc] Remove extra parens


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

  Changed paths:
    M llvm/test/CodeGen/AMDGPU/copysign-simplify-demanded-bits.ll

  Log Message:
  -----------
  AMDGPU: Add baseline test for copysign combine

We can use known bits information to avoid masking out one or
both of the operands.


  Commit: 3d1e1d9c2eb3e3ffebd580a453fa2bd9a4c0abd6
      https://github.com/llvm/llvm-project/commit/3d1e1d9c2eb3e3ffebd580a453fa2bd9a4c0abd6
  Author: Hugh Delaney <hugh.delaney at codeplay.com>
  Date:   2024-08-01 (Thu, 01 Aug 2024)

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

  Log Message:
  -----------
  [NVPTX][NFC] Remove unneeded declarations in test (#101167)

Only the bf16 declarations are needed, as only they are lowered in
AutoUpgrade.cpp.
f16 and other builtins have LLVM intrinsics already defined.


  Commit: d10dc5a06fac4dcabf2264c64c8672c6f6ae36fb
      https://github.com/llvm/llvm-project/commit/d10dc5a06fac4dcabf2264c64c8672c6f6ae36fb
  Author: Christopher Di Bella <cjdb at google.com>
  Date:   2024-08-01 (Thu, 01 Aug 2024)

  Changed paths:
    M libcxx/include/__algorithm/ranges_adjacent_find.h
    M libcxx/include/__algorithm/ranges_all_of.h
    M libcxx/include/__algorithm/ranges_any_of.h
    M libcxx/include/__algorithm/ranges_binary_search.h
    M libcxx/include/__algorithm/ranges_clamp.h
    M libcxx/include/__algorithm/ranges_contains.h
    M libcxx/include/__algorithm/ranges_contains_subrange.h
    M libcxx/include/__algorithm/ranges_copy.h
    M libcxx/include/__algorithm/ranges_copy_backward.h
    M libcxx/include/__algorithm/ranges_copy_if.h
    M libcxx/include/__algorithm/ranges_copy_n.h
    M libcxx/include/__algorithm/ranges_count.h
    M libcxx/include/__algorithm/ranges_count_if.h
    M libcxx/include/__algorithm/ranges_ends_with.h
    M libcxx/include/__algorithm/ranges_equal.h
    M libcxx/include/__algorithm/ranges_equal_range.h
    M libcxx/include/__algorithm/ranges_fill.h
    M libcxx/include/__algorithm/ranges_fill_n.h
    M libcxx/include/__algorithm/ranges_find.h
    M libcxx/include/__algorithm/ranges_find_end.h
    M libcxx/include/__algorithm/ranges_find_first_of.h
    M libcxx/include/__algorithm/ranges_find_if.h
    M libcxx/include/__algorithm/ranges_find_if_not.h
    M libcxx/include/__algorithm/ranges_find_last.h
    M libcxx/include/__algorithm/ranges_for_each.h
    M libcxx/include/__algorithm/ranges_for_each_n.h
    M libcxx/include/__algorithm/ranges_generate.h
    M libcxx/include/__algorithm/ranges_generate_n.h
    M libcxx/include/__algorithm/ranges_includes.h
    M libcxx/include/__algorithm/ranges_inplace_merge.h
    M libcxx/include/__algorithm/ranges_is_heap.h
    M libcxx/include/__algorithm/ranges_is_heap_until.h
    M libcxx/include/__algorithm/ranges_is_partitioned.h
    M libcxx/include/__algorithm/ranges_is_permutation.h
    M libcxx/include/__algorithm/ranges_is_sorted.h
    M libcxx/include/__algorithm/ranges_is_sorted_until.h
    M libcxx/include/__algorithm/ranges_lexicographical_compare.h
    M libcxx/include/__algorithm/ranges_lower_bound.h
    M libcxx/include/__algorithm/ranges_make_heap.h
    M libcxx/include/__algorithm/ranges_max.h
    M libcxx/include/__algorithm/ranges_max_element.h
    M libcxx/include/__algorithm/ranges_merge.h
    M libcxx/include/__algorithm/ranges_min.h
    M libcxx/include/__algorithm/ranges_min_element.h
    M libcxx/include/__algorithm/ranges_minmax.h
    M libcxx/include/__algorithm/ranges_minmax_element.h
    M libcxx/include/__algorithm/ranges_mismatch.h
    M libcxx/include/__algorithm/ranges_move.h
    M libcxx/include/__algorithm/ranges_move_backward.h
    M libcxx/include/__algorithm/ranges_next_permutation.h
    M libcxx/include/__algorithm/ranges_none_of.h
    M libcxx/include/__algorithm/ranges_nth_element.h
    M libcxx/include/__algorithm/ranges_partial_sort.h
    M libcxx/include/__algorithm/ranges_partial_sort_copy.h
    M libcxx/include/__algorithm/ranges_partition.h
    M libcxx/include/__algorithm/ranges_partition_copy.h
    M libcxx/include/__algorithm/ranges_partition_point.h
    M libcxx/include/__algorithm/ranges_pop_heap.h
    M libcxx/include/__algorithm/ranges_prev_permutation.h
    M libcxx/include/__algorithm/ranges_push_heap.h
    M libcxx/include/__algorithm/ranges_remove.h
    M libcxx/include/__algorithm/ranges_remove_copy.h
    M libcxx/include/__algorithm/ranges_remove_copy_if.h
    M libcxx/include/__algorithm/ranges_remove_if.h
    M libcxx/include/__algorithm/ranges_replace.h
    M libcxx/include/__algorithm/ranges_replace_copy.h
    M libcxx/include/__algorithm/ranges_replace_copy_if.h
    M libcxx/include/__algorithm/ranges_replace_if.h
    M libcxx/include/__algorithm/ranges_reverse.h
    M libcxx/include/__algorithm/ranges_reverse_copy.h
    M libcxx/include/__algorithm/ranges_rotate.h
    M libcxx/include/__algorithm/ranges_rotate_copy.h
    M libcxx/include/__algorithm/ranges_sample.h
    M libcxx/include/__algorithm/ranges_search.h
    M libcxx/include/__algorithm/ranges_search_n.h
    M libcxx/include/__algorithm/ranges_set_difference.h
    M libcxx/include/__algorithm/ranges_set_intersection.h
    M libcxx/include/__algorithm/ranges_set_symmetric_difference.h
    M libcxx/include/__algorithm/ranges_set_union.h
    M libcxx/include/__algorithm/ranges_shuffle.h
    M libcxx/include/__algorithm/ranges_sort.h
    M libcxx/include/__algorithm/ranges_sort_heap.h
    M libcxx/include/__algorithm/ranges_stable_partition.h
    M libcxx/include/__algorithm/ranges_stable_sort.h
    M libcxx/include/__algorithm/ranges_starts_with.h
    M libcxx/include/__algorithm/ranges_swap_ranges.h
    M libcxx/include/__algorithm/ranges_transform.h
    M libcxx/include/__algorithm/ranges_unique.h
    M libcxx/include/__algorithm/ranges_unique_copy.h
    M libcxx/include/__algorithm/ranges_upper_bound.h
    M libcxx/include/__iterator/advance.h
    M libcxx/include/__iterator/distance.h
    M libcxx/include/__iterator/next.h
    M libcxx/include/__iterator/prev.h
    M libcxx/include/__memory/ranges_construct_at.h
    M libcxx/include/__memory/ranges_uninitialized_algorithms.h

  Log Message:
  -----------
  [libc++] Remove dedicated namespaces for ranges functions (#76543)

We originally put implementation-detail function objects into individual
namespaces for `std::ranges` without a good reason for doing so. This
practice was continued, presumably because there was prior art. Since
there's no reason to keep these namespaces, this commit removes them,
which will slightly impact binary size.

This commit does not apply to CPOs, some of which need additional work.


  Commit: beecf2c6052485d99c6db86422aebdb433f98b5a
      https://github.com/llvm/llvm-project/commit/beecf2c6052485d99c6db86422aebdb433f98b5a
  Author: Shivam <75530356+phyBrackets at users.noreply.github.com>
  Date:   2024-08-01 (Thu, 01 Aug 2024)

  Changed paths:
    M libcxx/include/__memory/uses_allocator_construction.h
    M libcxx/test/std/utilities/memory/allocator.uses/allocator.uses.construction/uses_allocator_construction_args.pass.cpp

  Log Message:
  -----------
  [libc++] Fix missing declarations of uses_allocator_construction_args (#67044)

We were not declaring `__uses_allocator_construction_args` helper 
functions, leading to several valid uses failing to compile. This
patch solves the problem by moving these helper functions into a
struct, which also reduces the amount of redundant SFINAE we need
to perform since most overloads are checking for a cv-qualfied pair.

Fixes #66714

Co-authored-by: Louis Dionne <ldionne.2 at gmail.com>


  Commit: 389146816711ef6d11e54726e8ea300bf9945dc3
      https://github.com/llvm/llvm-project/commit/389146816711ef6d11e54726e8ea300bf9945dc3
  Author: ZERO-N <1416312228 at qq.com>
  Date:   2024-08-01 (Thu, 01 Aug 2024)

  Changed paths:
    M libcxx/include/__expected/expected.h
    M libcxx/test/libcxx/utilities/expected/expected.expected/and_then.mandates.verify.cpp

  Log Message:
  -----------
  [libc++] Avoid using **this in error messages for expected monadic operations (#84840)

Instead of using **this in error messages for std::expected monadic
operations, use value(). As shown in LWG3969, **this can trigger
unintended ADL and while it's only an error message, we might as
well be ADL-correct there too.

Co-authored-by: Louis Dionne <ldionne.2 at gmail.com>


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

  Changed paths:
    M clang/test/CXX/drs/cwg25xx.cpp
    M clang/test/CXX/drs/cwg28xx.cpp
    M clang/www/cxx_dr_status.html
    M clang/www/make_cxx_dr_status

  Log Message:
  -----------
  [NFC] [Clang] Some core issues have changed status from tentatively ready -> ready / review (#97200)

Also classes the "ready" status similarly to "tentatively ready" in
make_cxx_dr_status


  Commit: 1fbd7be58f67f367dbb38ac2ceaa8ce3208a8f95
      https://github.com/llvm/llvm-project/commit/1fbd7be58f67f367dbb38ac2ceaa8ce3208a8f95
  Author: Paul Walker <paul.walker at arm.com>
  Date:   2024-08-01 (Thu, 01 Aug 2024)

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

  Log Message:
  -----------
  [LLVM][ISel][SVE] Remove redundant merging fp patterns. (#101351)

Since "vselect cond, (binop, x, y), x" became the canonical form the
equivalent PatFrags for "binop x, (vselect cond, y, 0)" are no longer
required.


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

  Changed paths:
    M lldb/test/Shell/SymbolFile/DWARF/vla.cpp

  Log Message:
  -----------
  [lldb][test] Disable vla test on Windows

For the same reasons as 6cfac497e96978f2bfc50a00b51c198f2ed50f82.

This test was added in https://github.com/llvm/llvm-project/pull/100710.

It fails because when we're linking with link.exe, -gdwarf has no
effect and we get a PDB file anyway. The Windows on Arm lldb bot
uses link.exe.

 "C:\\Program Files\\Microsoft Visual Studio\\2022\\Community\\VC\\Tools\\MSVC\\14.34.31933\\bin\\Hostx86\\arm64\\link.exe" <...>

08/01/2024  01:47 PM         2,956,488 vla.cpp.ilk
08/01/2024  01:47 PM         6,582,272 vla.cpp.pdb
08/01/2024  01:47 PM           734,208 vla.cpp.tmp


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

  Changed paths:
    M clang/include/clang/Driver/Options.td
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/lib/Driver/ToolChains/CommonArgs.cpp
    M clang/lib/Driver/ToolChains/CommonArgs.h
    M clang/lib/Driver/ToolChains/Flang.cpp
    M flang/test/Driver/omp-driver-offload.f90

  Log Message:
  -----------
  [Flang][Driver] Introduce -fopenmp-targets offloading option (#100152)

This patch modifies the flang driver to introduce the `-fopenmp-targets`
option to the frontend compiler invocations corresponding to the OpenMP
host device on offloading-enabled compilations.

This option holds the list of offloading triples associated to the
compilation and is used by clang to determine whether offloading calls
should be generated for the host.


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

  Changed paths:
    M clang/include/clang/Driver/Options.td
    M clang/include/clang/Lex/PreprocessorOptions.h
    M clang/lib/Driver/ToolChains/AIX.cpp
    M clang/test/Preprocessor/pragma_mc_func.c

  Log Message:
  -----------
  [AIX] Turn on `#pragma mc_func` check by default (#101336)

https://github.com/llvm/llvm-project/pull/99888 added a check (and
corresponding options) to flag uses of `#pragma mc_func` on AIX.

This PR turns on the check by default.


  Commit: 130c135689ec12ab78c53645808524a8d28f7cae
      https://github.com/llvm/llvm-project/commit/130c135689ec12ab78c53645808524a8d28f7cae
  Author: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>
  Date:   2024-08-01 (Thu, 01 Aug 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Parse/ParseExpr.cpp

  Log Message:
  -----------
  [clang] Fix crash with multiple non-parenthsized `sizeof` (#101297)

There are 5 unary operators that can be followed by a non-parenthesized
expression: `sizeof`, `__datasizeof`, `__alignof`, `alignof`,
`_Alignof`. When we nest them too deep, `BalancedDelimiterTracker` does
not help, because there are no parentheses, and we crash. Instead, this
patch recognize chains of those operators, and parse them with
sufficient stack space.

Fixes #45061


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

  Changed paths:
    M clang/include/clang/AST/DeclCXX.h
    M clang/lib/AST/DeclCXX.cpp
    M clang/lib/Sema/SemaChecking.cpp
    M clang/test/SemaCXX/type-traits.cpp
    M llvm/include/llvm/ADT/STLExtras.h

  Log Message:
  -----------
  [Clang] Fix definition of layout-compatible to ignore empty classes (#92103)

Also changes the behaviour of `__builtin_is_layout_compatible`

None of the historic nor the current definition of layout-compatible
classes mention anything about base classes (other than implicitly
through being standard-layout) and are defined in terms of members, not
direct members.


  Commit: 59ca618e3b7aec8c32e24d781bae436dc99b2727
      https://github.com/llvm/llvm-project/commit/59ca618e3b7aec8c32e24d781bae436dc99b2727
  Author: Damien L-G <dalg24 at gmail.com>
  Date:   2024-08-01 (Thu, 01 Aug 2024)

  Changed paths:
    M libcxx/include/__atomic/atomic_ref.h
    M libcxx/test/std/atomics/atomics.ref/is_always_lock_free.pass.cpp

  Log Message:
  -----------
  [libc++] Increase atomic_ref's required alignment for small types (#99654)

This patch increases the alignment requirement for std::atomic_ref
such that we can guarantee lockfree operations more often. Specifically,
we require types that are 1, 2, 4, 8, or 16 bytes in size to be aligned
to at least their size to be used with std::atomic_ref.

This is the case for most types, however a notable exception is
`long long` on x86, which is 8 bytes in length but has an alignment
of 4.

As a result of this patch, one has to be more careful about the
alignment of objects used with std::atomic_ref. Failure to provide
a properly-aligned object to std::atomic_ref is a precondition 
violation and is technically UB. On the flipside, this allows us
to provide an atomic_ref that is actually lockfree more often, 
which is an important QOI property.

More information in the discussion at https://github.com/llvm/llvm-project/pull/99570#issuecomment-2237668661.

Co-authored-by: Louis Dionne <ldionne.2 at gmail.com>


  Commit: 4e89d1199c180fd384486ba2796368ec800180ee
      https://github.com/llvm/llvm-project/commit/4e89d1199c180fd384486ba2796368ec800180ee
  Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
  Date:   2024-08-01 (Thu, 01 Aug 2024)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
    A llvm/test/Transforms/InstCombine/mem-intrinsics.ll
    M llvm/test/Transforms/InstCombine/mempcpy.ll

  Log Message:
  -----------
  [InstCombine] Convert mem intrinsic with null into a noop (#100388)

When src/dest passed into memset/memcpy is null: 
```
len == 0: this call is a noop.
len != 0: the behavior is undefined.
```
See also https://llvm.org/docs/LangRef.html#llvm-memset-intrinsics
Alive2: https://alive2.llvm.org/ce/z/tJeRNL

This patch converts these mem intrinsic calls into an assumption `len ==
0` to mitigate code-size bloat caused by JumpThreading.


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

  Changed paths:
    M libcxx/docs/ImplementationDefinedBehavior.rst
    M libcxx/docs/Status/Cxx20Issues.csv
    M libcxx/include/sstream
    A libcxx/test/libcxx/input.output/string.streams/stringbuf/const_sso_buffer.pass.cpp
    M libcxx/test/std/input.output/string.streams/stringbuf/stringbuf.cons/default.pass.cpp

  Log Message:
  -----------
  [libc++][stringbuf] Test and document LWG2995. (#100879)

As mentioned in the LWG issue libc++ has already implemented the
optimization. This adds tests and documents the implementation defined
behaviour.

Drive-by fixes an initialization.


  Commit: 5ad15e58136bc80eadcc0a7fceb463bbb5317345
      https://github.com/llvm/llvm-project/commit/5ad15e58136bc80eadcc0a7fceb463bbb5317345
  Author: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>
  Date:   2024-08-01 (Thu, 01 Aug 2024)

  Changed paths:
    M clang/www/cxx_dr_status.html

  Log Message:
  -----------
  [clang][NFC] Update `cxx_dr_status.html`


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

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.cpp
    M llvm/test/Analysis/CostModel/AMDGPU/canonicalize.ll
    M llvm/test/Transforms/SLPVectorizer/AMDGPU/packed-math.ll
    M llvm/test/Transforms/SLPVectorizer/AMDGPU/slp-v2f16.ll

  Log Message:
  -----------
  AMDGPU: Improve cost handling of canonicalize (#101479)


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

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVInstrInfoVPseudos.td
    M llvm/test/CodeGen/RISCV/rvv/vmerge.ll
    M llvm/test/CodeGen/RISCV/rvv/vmv.v.v.ll

  Log Message:
  -----------
  [RISCV] Support f16 vmv.v.v and vmerge.vvm intrinsics with Zvfhmin. (#101457)

Clang expects that this works.


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

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

  Log Message:
  -----------
  [Mem2Reg] Replace block maps with block numbers (#101391)

Very minor performance improvement.


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

  Changed paths:
    M llvm/include/llvm/LinkAllPasses.h
    M llvm/include/llvm/Transforms/Scalar.h
    M llvm/include/llvm/Transforms/Scalar/LowerConstantIntrinsics.h
    M llvm/lib/CodeGen/PreISelIntrinsicLowering.cpp
    M llvm/lib/CodeGen/TargetPassConfig.cpp
    M llvm/lib/Transforms/Scalar/LowerConstantIntrinsics.cpp
    M llvm/lib/Transforms/Scalar/Scalar.cpp
    M llvm/test/CodeGen/AArch64/O0-pipeline.ll
    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/O0-pipeline.ll
    M llvm/test/CodeGen/LoongArch/opt-pipeline.ll
    M llvm/test/CodeGen/PowerPC/O0-pipeline.ll
    M llvm/test/CodeGen/PowerPC/O3-pipeline.ll
    M llvm/test/CodeGen/RISCV/O0-pipeline.ll
    M llvm/test/CodeGen/RISCV/O3-pipeline.ll
    M llvm/test/CodeGen/X86/O0-pipeline.ll
    M llvm/test/CodeGen/X86/opt-pipeline.ll

  Log Message:
  -----------
  [CodeGen] Merge lowerConstantIntrinsics into pre-isel lowering (#97727)

Currently, the LowerConstantIntrinsics pass does an RPO traversal of
every function... only to find that many functions don't have constant
intrinsics (is.constant, objectsize). In the CodeGen pipeline, there is
already a pre-isel intrinsic lowering pass, which iterates over
intrinsic declarations and lowers all users. Call
lowerConstantIntrinsics from this pass to avoid the extra iteration over
the entire IR and the RPO traversal.


  Commit: 1a5d8926c5f9c1e75a285e122cf6cad0191a41b5
      https://github.com/llvm/llvm-project/commit/1a5d8926c5f9c1e75a285e122cf6cad0191a41b5
  Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
  Date:   2024-08-02 (Fri, 02 Aug 2024)

  Changed paths:
    M llvm/include/llvm/IR/ConstantRange.h
    M llvm/lib/IR/ConstantRange.cpp
    M llvm/test/Transforms/CorrelatedValuePropagation/shl.ll
    M llvm/unittests/IR/ConstantRangeTest.cpp

  Log Message:
  -----------
   [ConstantRange] Add support for `shlWithNoWrap` (#100594)

This patch adds initial support for `ConstantRange:: shlWithNoWrap` to
fold https://github.com/dtcxzyw/llvm-tools/issues/22. However, this
patch cannot fix the original issue. Improvements will be submitted in subsequent patches.


  Commit: 68df06a0b2998765cb0a41353fcf0919bbf57ddb
      https://github.com/llvm/llvm-project/commit/68df06a0b2998765cb0a41353fcf0919bbf57ddb
  Author: yandalur <quic_yandalur at quicinc.com>
  Date:   2024-08-01 (Thu, 01 Aug 2024)

  Changed paths:
    M llvm/lib/Target/Hexagon/HexagonConstExtenders.cpp
    A llvm/test/CodeGen/Hexagon/cext-opt-block-addr.mir

  Log Message:
  -----------
  [Hexagon] Do not optimize address of another function's block (#101209)

When the constant extender optimization pass encounters an instruction
that uses an extended address pointing to another function's block,
avoid adding the instruction to the extender list for the current
machine function.

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


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

  Changed paths:
    M libc/newhdrgen/yaml_to_classes.py

  Log Message:
  -----------
  [libc] Remove verbose printing from hdrgen tool (#101376)

Summary:
This fills the terminal with information already present from the
`add_custom_command(COMMENT ...)` field, so it breaks everything into
new lines. Remove this print to clean that up.


  Commit: 2771ea4ea47db2361b9842211f9e9ee595320af6
      https://github.com/llvm/llvm-project/commit/2771ea4ea47db2361b9842211f9e9ee595320af6
  Author: Santanu Das <quic_santdas at quicinc.com>
  Date:   2024-08-01 (Thu, 01 Aug 2024)

  Changed paths:
    M llvm/lib/Target/Hexagon/HexagonISelLoweringHVX.cpp
    A llvm/test/CodeGen/Hexagon/hvx-concat-lower.ll

  Log Message:
  -----------
  [Hexagon] Fix concat lowering for HVX for 64B vector length (#98318)

When concatenation of vector instructions is formed, as a part of it
vector rotation is performed. The direction of the shift was not
correctly calculated. This fixes the rotation factor.


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

  Changed paths:
    M mlir/test/Dialect/Vector/vector-transfer-flatten.mlir
    M mlir/test/Dialect/Vector/vector-transfer-permutation-lowering.mlir

  Log Message:
  -----------
  [mlir][vector] Update tests for xfer-permute-lowering (nfc) (#101468)

Updates formatting and variable names in:
  * vector-transfer-permutation-lowering.mlir

This is primarily to improve consistency, both within this particular
test file as well as across tests. In particular, with this PR I'm
adopting similar naming convention to that that's already present in
vector-transfer-flatten.mlir.

Overview of changes:
  * All memref input arguments are re-named as `%mem`.
  * All vector input arguments are re-named as `%vec`.
  * All tensor input arguments are re-named as `%dest`.
  * LIT variables are update to be consistent with input arguments.
  * Renamed all output arguments as `%res`.
  * Updated indentation to be more C-like.


  Commit: 2177a1767b88d684830b83ac7f06d0f9f15102e2
      https://github.com/llvm/llvm-project/commit/2177a1767b88d684830b83ac7f06d0f9f15102e2
  Author: Slava Zakharin <szakharin at nvidia.com>
  Date:   2024-08-01 (Thu, 01 Aug 2024)

  Changed paths:
    M flang/runtime/copy.cpp
    M flang/runtime/copy.h
    A flang/runtime/stack.h

  Log Message:
  -----------
  [flang][runtime] Avoid call recursion in CopyElement runtime. (#101421)

Device compilers may fail to identify maximum stack size required
by a kernel that calls CopyElement due to potential recursive calls.
To avoid this, we can use dynamically allocated Stack. To avoid
dynamic allocations on the host for simple cases, the Stack
implementation
has a reserved space (that ends up being allocated on the program
stack).
I tested both pre-allocated and 0-reserve implementations on the host,
and all passed. The actual reserve values might be tuned as needed.


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

  Changed paths:
    M flang/include/flang/ISO_Fortran_binding.h
    M flang/include/flang/Optimizer/CodeGen/TBAABuilder.h
    M flang/include/flang/Optimizer/CodeGen/TypeConverter.h
    M flang/include/flang/Runtime/descriptor.h
    M flang/lib/Optimizer/CodeGen/CodeGen.cpp
    M flang/lib/Optimizer/CodeGen/TypeConverter.cpp
    M flang/runtime/CMakeLists.txt
    M flang/runtime/ISO_Fortran_util.h
    A flang/runtime/allocator-registry.cpp
    A flang/runtime/allocator-registry.h
    M flang/runtime/descriptor.cpp
    M flang/test/Fir/box.fir
    M flang/test/Fir/convert-to-llvm.fir
    M flang/test/Fir/embox-char.fir
    M flang/test/Fir/embox.fir
    M flang/test/Fir/ignore-missing-type-descriptor.fir
    M flang/test/Fir/polymorphic.fir
    M flang/test/Fir/rebox-global.fir
    M flang/test/Fir/rebox.fir
    M flang/test/Fir/tbaa.fir
    M flang/test/Fir/type-descriptor.fir
    M flang/test/Lower/allocatable-polymorphic.f90

  Log Message:
  -----------
  [flang] Add ability to have special allocator for descriptor data (#100690)

This patch enhances the descriptor with the ability to have specialized
allocator. The allocators are registered in a dedicated registry and the
index of the desired allocator is stored in the descriptor. The default
allocator, std::malloc, is registered at index 0.

In order to have this allocator index in the descriptor, the f18Addendum
field is repurposed to be able to hold the presence flag for the
addendum (lsb) and the allocator index.

Since this is a change in the semantic and name of the 7th field of the
descriptor, the CFI_VERSION is bumped to the date of the initial change.

This patch only adds the ability to have this features as part of the
descriptor but does not add specific allocator yet. CUDA fortran will be
the first user of this feature to allocate descriptor data in the
different type of device memory base on the CUDA attribute.

---------

Co-authored-by: Slava Zakharin <szakharin at nvidia.com>


  Commit: c7c5e05389292da7e5a87e3d1d3ef08021911a53
      https://github.com/llvm/llvm-project/commit/c7c5e05389292da7e5a87e3d1d3ef08021911a53
  Author: David Green <david.green at arm.com>
  Date:   2024-08-01 (Thu, 01 Aug 2024)

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

  Log Message:
  -----------
  [AArch64] Format comment to fit into line-length. NFC


  Commit: 2a5f7e58d71c394b241fdd1d905041ad0537acab
      https://github.com/llvm/llvm-project/commit/2a5f7e58d71c394b241fdd1d905041ad0537acab
  Author: Artem Pianykh <arr at fb.com>
  Date:   2024-08-01 (Thu, 01 Aug 2024)

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

  Log Message:
  -----------
  [NFC][asan][odr] Use IntrusiveList for a ListOfGlobals

Extracted from #100923.


  Commit: a5e67fba8abb35211aebb945d9d07ac988b80cf5
      https://github.com/llvm/llvm-project/commit/a5e67fba8abb35211aebb945d9d07ac988b80cf5
  Author: Tsz Chan <keithcth2001 at gmail.com>
  Date:   2024-08-01 (Thu, 01 Aug 2024)

  Changed paths:
    M libc/config/baremetal/arm/entrypoints.txt
    M libc/config/baremetal/riscv/entrypoints.txt
    M libc/config/darwin/arm/entrypoints.txt
    M libc/config/linux/aarch64/entrypoints.txt
    M libc/config/linux/riscv/entrypoints.txt
    M libc/config/linux/x86_64/entrypoints.txt
    M libc/newhdrgen/yaml/stdio.yaml
    M libc/spec/stdc.td
    M libc/src/stdio/CMakeLists.txt
    A libc/src/stdio/asprintf.cpp
    A libc/src/stdio/asprintf.h
    M libc/src/stdio/printf_core/CMakeLists.txt
    M libc/src/stdio/printf_core/core_structs.h
    A libc/src/stdio/printf_core/vasprintf_internal.h
    M libc/src/stdio/printf_core/writer.h
    A libc/src/stdio/vasprintf.cpp
    A libc/src/stdio/vasprintf.h
    M libc/test/src/stdio/CMakeLists.txt
    A libc/test/src/stdio/asprintf_test.cpp
    A libc/test/src/stdio/vasprintf_test.cpp

  Log Message:
  -----------
  [libc] Implement vasprintf and asprintf (#98824)

[libc] Implement vasprintf and asprintf

---------

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


  Commit: 0c31123c8599bfd9d67549f6174812fbcf988d78
      https://github.com/llvm/llvm-project/commit/0c31123c8599bfd9d67549f6174812fbcf988d78
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-08-01 (Thu, 01 Aug 2024)

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

  Log Message:
  -----------
  [libc] Fix erroneous warning on GCC (#101520)


  Commit: 7da1dbb632ca490c2ab3c2d6ff46cccda38c7acd
      https://github.com/llvm/llvm-project/commit/7da1dbb632ca490c2ab3c2d6ff46cccda38c7acd
  Author: Daniel Bertalan <dani at danielbertalan.dev>
  Date:   2024-08-01 (Thu, 01 Aug 2024)

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

  Log Message:
  -----------
  [MachO] Remove redundant bounds check (#100176)

The condition was duplicated, the correct one for this message would
have been `ImportsEnd > SymbolsEnd`. However, this is a subset of
`ImportEnd > Symbols` (since `Symbols <= SymbolsEnd`), so it can be
removed altogether.

I made this thinko in 686d8ce.

Note that that change wasn't intended to be permanent, and served as a
quick stopgap to facilitate testing chained fixups in LLD before Apple
upstreamed their implementation.

Fixes #90662
Fixes #87203


  Commit: 0af07c078798b7c427e2981377781b5cc555a568
      https://github.com/llvm/llvm-project/commit/0af07c078798b7c427e2981377781b5cc555a568
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-08-01 (Thu, 01 Aug 2024)

  Changed paths:
    M lld/ELF/DWARF.cpp
    M lld/ELF/ICF.cpp
    M lld/ELF/InputFiles.cpp
    M lld/ELF/InputFiles.h
    M lld/ELF/InputSection.cpp
    M lld/ELF/InputSection.h
    M lld/ELF/LinkerScript.cpp
    M lld/ELF/MarkLive.cpp
    M lld/ELF/OutputSections.cpp
    M lld/ELF/OutputSections.h
    M lld/ELF/Relocations.cpp
    M lld/ELF/Relocations.h
    M lld/ELF/SyntheticSections.cpp
    M lld/ELF/Writer.cpp
    A lld/test/ELF/crel-rel-mixed.s
    A lld/test/ELF/crel.s
    M lld/test/ELF/debug-names.s
    M lld/test/ELF/gc-sections.s
    M lld/test/ELF/icf1.s
    M lld/test/ELF/icf4.s
    M lld/test/ELF/linkerscript/nocrossrefs.test
    A lld/test/ELF/relocatable-crel-32.s
    A lld/test/ELF/relocatable-crel.s

  Log Message:
  -----------
  [ELF] Support relocatable files using CREL with explicit addends

... using the temporary section type code 0x40000020
(`clang -c -Wa,--crel,--allow-experimental-crel`). LLVM will change the
code and break compatibility (Clang and lld of different versions are
not guaranteed to cooperate, unlike other features). CREL with implicit
addends are not supported.

---

Introduce `RelsOrRelas::crels` to iterate over SHT_CREL sections and
update users to check `crels`.

(The decoding performance is critical and error checking is difficult.
Follow `skipLeb` and `R_*LEB128` handling, do not use
`llvm::decodeULEB128`, whichs compiles to a lot of code.)

A few users (e.g. .eh_frame, LLDDwarfObj, s390x) require random access. Pass
`/*supportsCrel=*/false` to `relsOrRelas` to allocate a buffer and
convert CREL to RELA (`relas` instead of `crels` will be used). Since
allocating a buffer increases, the conversion is only performed when
absolutely necessary.

---

Non-alloc SHT_CREL sections may be created in -r and --emit-relocs
links. SHT_CREL and SHT_RELA components need reencoding since
r_offset/r_symidx/r_type/r_addend may change. (r_type may change because
relocations referencing a symbol in a discarded section are converted to
`R_*_NONE`).

* SHT_CREL components: decode with `RelsOrRelas` and re-encode (`OutputSection::finalizeNonAllocCrel`)
* SHT_RELA components: convert to CREL (`relToCrel`). An output section can only have one relocation section.
* SHT_REL components: print an error for now.

SHT_REL to SHT_CREL conversion for -r/--emit-relocs is complex and
unsupported yet.

Link: https://discourse.llvm.org/t/rfc-crel-a-compact-relocation-format-for-elf/77600

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


  Commit: d68a4d512006750f2e2e8b31993e2c3d16f252a9
      https://github.com/llvm/llvm-project/commit/d68a4d512006750f2e2e8b31993e2c3d16f252a9
  Author: Arthur Eubanks <aeubanks at google.com>
  Date:   2024-08-01 (Thu, 01 Aug 2024)

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

  Log Message:
  -----------
  [SandboxIR][NFC] Introduce templated CastInstImpl to simplify subclasses (#101427)

The CastInst subclasses all have pretty much the same implementation.
Add a helper templated class to help stamp out the subclasses more
succinctly.


  Commit: bc747c3e1377e3e262d901cefcae2f563c895bb5
      https://github.com/llvm/llvm-project/commit/bc747c3e1377e3e262d901cefcae2f563c895bb5
  Author: tltao <tony.le.tao at gmail.com>
  Date:   2024-08-01 (Thu, 01 Aug 2024)

  Changed paths:
    M llvm/lib/Target/SystemZ/SystemZAsmPrinter.cpp
    M llvm/lib/Target/SystemZ/SystemZInstrInfo.td
    A llvm/test/CodeGen/SystemZ/Large/large-ada-01.py
    A llvm/test/CodeGen/SystemZ/Large/large-ada-02.py

  Log Message:
  -----------
  [SystemZ][z/OS] Fix incorrect codegen for ADA_ENTRY pseudo instruction (#101415)

The current MCInstBuilder for generating an ALGFI when loading something
from the ADA is incorrect and will crash the compiler.

r0 must also be excluded from the registers returned as the result,
since it is treated as the value "0" on z/OS.

Also add some tests to properly test the paths where LLILF and ALGFI are
generated.

---------

Co-authored-by: Tony Tao <tonytao at ca.ibm.com>


  Commit: 90065da6d5a5f661b60c2f75b0f2dc094d27f4f5
      https://github.com/llvm/llvm-project/commit/90065da6d5a5f661b60c2f75b0f2dc094d27f4f5
  Author: RoseZhang03 <rosezhang at google.com>
  Date:   2024-08-01 (Thu, 01 Aug 2024)

  Changed paths:
    M libc/fuzzing/CMakeLists.txt
    M libc/fuzzing/math/CMakeLists.txt
    A libc/fuzzing/math/sin_fuzz.cpp

  Log Message:
  -----------
  [libc] created fuzz test for sin function (#101411)

Verifies that sin function output is correct by comparing with MPFR
output. NaN and inf are not tested (as our output will vary compared to
MPFR), and signed zeroes are already tested in unit tests.


  Commit: 3497211d80c22e1c488f1617db1d70413a2096ec
      https://github.com/llvm/llvm-project/commit/3497211d80c22e1c488f1617db1d70413a2096ec
  Author: Michael Jones <michaelrj at google.com>
  Date:   2024-08-01 (Thu, 01 Aug 2024)

  Changed paths:
    M libc/fuzzing/math/RemQuoDiff.h
    M libc/fuzzing/math/nextafter_differential_fuzz.cpp

  Log Message:
  -----------
  [libc] Fix math fuzzers (#101529)

Fix minor typos that accumulated while the math fuzzers were disabled.


  Commit: 83e6d872cfbb98b0b1e9a5080afe1e1c8cf69237
      https://github.com/llvm/llvm-project/commit/83e6d872cfbb98b0b1e9a5080afe1e1c8cf69237
  Author: RoseZhang03 <rosezhang at google.com>
  Date:   2024-08-01 (Thu, 01 Aug 2024)

  Changed paths:
    M libc/fuzzing/stdlib/heap_sort_fuzz.cpp

  Log Message:
  -----------
  [libc] heap_sort_fuzz deleted unnecessary includes (#101535)

Including src/__suppot/macros/config.h is unnecessary


  Commit: 41439d5bb72f1f582df8887b37931720d7233298
      https://github.com/llvm/llvm-project/commit/41439d5bb72f1f582df8887b37931720d7233298
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-08-01 (Thu, 01 Aug 2024)

  Changed paths:
    M clang/test/CodeGenCUDA/amdgpu-atomic-ops.cu
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw_fmax.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw_fmin.ll
    M llvm/test/CodeGen/AMDGPU/buffer-fat-pointer-atomicrmw-fmax.ll
    M llvm/test/CodeGen/AMDGPU/buffer-fat-pointer-atomicrmw-fmin.ll
    M llvm/test/CodeGen/AMDGPU/flat-atomicrmw-fmax.ll
    M llvm/test/CodeGen/AMDGPU/flat-atomicrmw-fmin.ll
    M llvm/test/CodeGen/AMDGPU/global-atomicrmw-fmax.ll
    M llvm/test/CodeGen/AMDGPU/global-atomicrmw-fmin.ll
    M llvm/test/CodeGen/AMDGPU/global_atomics_scan_fmax.ll
    M llvm/test/CodeGen/AMDGPU/global_atomics_scan_fmin.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-f32-agent.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-f32-system.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-f64-agent.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-f64-system.ll

  Log Message:
  -----------
  AMDGPU: Handle remote/fine-grained memory in atomicrmw fmin/fmax lowering (#96759)

Consider the new atomic metadata when choosing to expand as cmpxchg
instead.


  Commit: 8d151f804ff43aaed1edf810bb2a07607b8bba14
      https://github.com/llvm/llvm-project/commit/8d151f804ff43aaed1edf810bb2a07607b8bba14
  Author: Nhat Nguyen <nhat7203 at gmail.com>
  Date:   2024-08-01 (Thu, 01 Aug 2024)

  Changed paths:
    M libcxx/include/__algorithm/equal_range.h
    M libcxx/include/__algorithm/includes.h
    M libcxx/include/__algorithm/is_permutation.h
    M libcxx/include/__algorithm/lower_bound.h
    M libcxx/include/__algorithm/max_element.h
    M libcxx/include/__algorithm/min_element.h
    M libcxx/include/__algorithm/minmax.h
    M libcxx/include/__algorithm/minmax_element.h
    M libcxx/include/__algorithm/partial_sort_copy.h
    M libcxx/include/__algorithm/search.h
    M libcxx/include/__algorithm/search_n.h
    M libcxx/include/__algorithm/upper_bound.h
    M libcxx/src/regex.cpp
    A libcxx/test/libcxx/algorithms/callable-requirements-rvalue.compile.pass.cpp
    A libcxx/test/libcxx/algorithms/callable-requirements.verify.cpp
    R libcxx/test/libcxx/algorithms/callable.verify.cpp
    M libcxx/test/libcxx/algorithms/ranges_robust_against_copying_projections.pass.cpp
    M libcxx/test/libcxx/algorithms/robust_against_cpp20_hostile_iterators.compile.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.is_permutation/is_permutation_pred.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.search/search_n_pred.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.search/search_pred.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.merge/inplace_merge_comp.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.sort/stable.sort/stable_sort_comp.pass.cpp

  Log Message:
  -----------
  [libc++] Check correctly ref-qualified __is_callable in algorithms (#73451)

We were only checking that the comparator was rvalue callable,
when in reality the algorithms always call comparators as lvalues.
This patch also refactors the tests for callable requirements and
expands it to a few missing algorithms.

Fixes #69554


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

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIInstrFormats.td
    M llvm/lib/Target/AMDGPU/VOP1Instructions.td
    M llvm/test/MC/AMDGPU/gfx10_unsupported.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop1.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop1_t16_err.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop1.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop1_t16_err.s
    M llvm/test/MC/Disassembler/AMDGPU/decode-err.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop1.txt

  Log Message:
  -----------
  [AMDGPU][True16][MC] Support v_swap_b16. (#100442)

support V_SWAP_B16 true16 encoding in asm/disasm for GFX11/12

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


  Commit: f95bd62cf99d12d5bfa5333d481fe9e7aa5a22ed
      https://github.com/llvm/llvm-project/commit/f95bd62cf99d12d5bfa5333d481fe9e7aa5a22ed
  Author: Ellis Hoag <ellis.sparky.hoag at gmail.com>
  Date:   2024-08-01 (Thu, 01 Aug 2024)

  Changed paths:
    M lld/MachO/BPSectionOrderer.cpp
    M lld/MachO/Options.td
    M lld/test/MachO/bp-section-orderer-errs.s

  Log Message:
  -----------
  [lld][InstrProf] Add "Separate" irpgo-profile-sort option (#101084)

Add the "Separate" option `--irpgo-profile-sort <profile` instead of
just the "Joined" option `--irpgo-profile-sort=<profile>`. This is
useful if the path has a `,` for some reason which would break when
trying to use `-Wl,--irpgo-profile-sort=<profile-with-comma>`.

While I'm here, use `static_cast<>` instead of the C style cast
introduced in https://github.com/llvm/llvm-project/pull/100627


  Commit: 0512ba0a435a9d693cb61f182fc9e3eb7f6dbd6a
      https://github.com/llvm/llvm-project/commit/0512ba0a435a9d693cb61f182fc9e3eb7f6dbd6a
  Author: Tom Stellard <tstellar at redhat.com>
  Date:   2024-08-01 (Thu, 01 Aug 2024)

  Changed paths:
    M .github/workflows/llvm-project-tests.yml

  Log Message:
  -----------
  workflows: Fix libclc-tests (#101524)

The old out-of-tree build configuration stopped working and in tree
builds are supported now, so we should use the in tree configuration.
The only downside is we can't run the tests any more, but at least we
will be able to test the build again.


  Commit: 855703537e4d7eb1d7310ba40c3459e79e3243d2
      https://github.com/llvm/llvm-project/commit/855703537e4d7eb1d7310ba40c3459e79e3243d2
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-08-01 (Thu, 01 Aug 2024)

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

  Log Message:
  -----------
  [LV] Add more tests with switches.

Extra tests for
https://github.com/llvm/llvm-project/pull/99808, including cost model
tests.


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

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

  Log Message:
  -----------
  [SandboxIR] Implement the remaining CastInst sub-classes (#101537)

This patch implements:
sandboxir::UIToFPInst
sandboxir::FPExtInst
sandboxir::FPTruncInst
sandboxir::SExtInst
sandboxir::ZExtInst
sandboxir::TruncInst


  Commit: 5e326983b620507940816f4c30ab4d80fa6250ad
      https://github.com/llvm/llvm-project/commit/5e326983b620507940816f4c30ab4d80fa6250ad
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-08-01 (Thu, 01 Aug 2024)

  Changed paths:
    M libc/utils/gpu/loader/CMakeLists.txt
    M libc/utils/gpu/loader/Loader.h
    M libc/utils/gpu/loader/Main.cpp
    M libc/utils/gpu/loader/amdgpu/amdhsa-loader.cpp
    M libc/utils/gpu/loader/nvptx/nvptx-loader.cpp

  Log Message:
  -----------
  [libc] Use LLVM CommandLine for loader tool (#101501)

Summary:
This patch removes the ad-hoc parsing that I used previously and
replaces it with the LLVM CommnadLine interface. This doesn't change any
functionality, but makes it easier to maintain.


  Commit: 18b58d42b2cba805ba4d34864d2e1e73e1610588
      https://github.com/llvm/llvm-project/commit/18b58d42b2cba805ba4d34864d2e1e73e1610588
  Author: Nathan Sidwell <nathan at acm.org>
  Date:   2024-08-01 (Thu, 01 Aug 2024)

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

  Log Message:
  -----------
  [clang-format] Rename variable more sensitively (#100943)

Renaming to `Disallowed`.


  Commit: ea46e202a9e0344f8d6d3a595e41fd6c515b50c2
      https://github.com/llvm/llvm-project/commit/ea46e202a9e0344f8d6d3a595e41fd6c515b50c2
  Author: Matheus Izvekov <mizvekov at gmail.com>
  Date:   2024-08-01 (Thu, 01 Aug 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/AST/ExprClassification.cpp
    A clang/test/SemaCXX/GH82167.cpp

  Log Message:
  -----------
  [clang] fix classification of a string literal expression used as initializer (#101447)


  Commit: 160fb1121cdf703c3ef5e61fb26c5659eb581489
      https://github.com/llvm/llvm-project/commit/160fb1121cdf703c3ef5e61fb26c5659eb581489
  Author: Bill Wendling <5993918+bwendling at users.noreply.github.com>
  Date:   2024-08-01 (Thu, 01 Aug 2024)

  Changed paths:
    M clang/lib/CodeGen/CGBuiltin.cpp
    M clang/lib/CodeGen/CGExpr.cpp
    M clang/lib/CodeGen/CodeGenFunction.h
    M clang/test/CodeGen/attr-counted-by.c

  Log Message:
  -----------
  [Clang][NFC] Improve generation of GEP and RecordDecl loop (#101434)

As with other loops, we need only look at a RecordDecl's FieldDecls.
Convert to using them. In the meantime, we can improve the generation of
the 'counted_by' FieldDecl's GEP by creating one GEP instead of a series
of GEPs.


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

  Changed paths:
    M flang/include/flang/Optimizer/CodeGen/CGOps.td
    M flang/include/flang/Optimizer/Dialect/FIROps.td
    A flang/include/flang/Runtime/allocator-registry.h
    M flang/lib/Optimizer/CodeGen/CodeGen.cpp
    M flang/lib/Optimizer/CodeGen/PreCGRewrite.cpp
    M flang/runtime/allocator-registry.cpp
    R flang/runtime/allocator-registry.h
    M flang/runtime/descriptor.cpp
    M flang/test/Fir/embox.fir

  Log Message:
  -----------
  [flang] Add allocator_idx attribute on fir.embox and fircg.ext_embox (#101212)

#100690 introduces allocator registry with the ability to store
allocator index in the descriptor. This patch adds an attribute to
fir.embox and fircg.ext_embox to be able to set the allocator index
while populating the descriptor fields.


  Commit: 451bba6fbf0bc9a2bfff9253ac45caf7c57d38b9
      https://github.com/llvm/llvm-project/commit/451bba6fbf0bc9a2bfff9253ac45caf7c57d38b9
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-08-01 (Thu, 01 Aug 2024)

  Changed paths:
    M libcxx/include/__algorithm/equal_range.h
    M libcxx/include/__algorithm/includes.h
    M libcxx/include/__algorithm/is_permutation.h
    M libcxx/include/__algorithm/lower_bound.h
    M libcxx/include/__algorithm/max_element.h
    M libcxx/include/__algorithm/min_element.h
    M libcxx/include/__algorithm/minmax.h
    M libcxx/include/__algorithm/minmax_element.h
    M libcxx/include/__algorithm/partial_sort_copy.h
    M libcxx/include/__algorithm/search.h
    M libcxx/include/__algorithm/search_n.h
    M libcxx/include/__algorithm/upper_bound.h
    M libcxx/src/regex.cpp
    R libcxx/test/libcxx/algorithms/callable-requirements-rvalue.compile.pass.cpp
    R libcxx/test/libcxx/algorithms/callable-requirements.verify.cpp
    A libcxx/test/libcxx/algorithms/callable.verify.cpp
    M libcxx/test/libcxx/algorithms/ranges_robust_against_copying_projections.pass.cpp
    M libcxx/test/libcxx/algorithms/robust_against_cpp20_hostile_iterators.compile.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.is_permutation/is_permutation_pred.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.search/search_n_pred.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.search/search_pred.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.merge/inplace_merge_comp.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.sort/stable.sort/stable_sort_comp.pass.cpp

  Log Message:
  -----------
  [libc++] Revert "Check correctly ref-qualified __is_callable in algorithms (#73451)"

This reverts commit 8d151f804ff43aaed1edf810bb2a07607b8bba14, which
broke some build bots. I think that is caused by an invalid argument
order when checking __is_comparable in upper_bound.


  Commit: 5e84646982d1ec9bc94e48dde4b47f03c044a156
      https://github.com/llvm/llvm-project/commit/5e84646982d1ec9bc94e48dde4b47f03c044a156
  Author: Zequan Wu <zequanwu at google.com>
  Date:   2024-08-01 (Thu, 01 Aug 2024)

  Changed paths:
    M clang/lib/CodeGen/CGExpr.cpp
    M clang/test/CodeGen/attr-nomerge.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
    M llvm/test/CodeGen/X86/nomerge.ll

  Log Message:
  -----------
  [Clang] Fix nomerge attribute not working with __builtin_trap(), __debugbreak(), __builtin_verbose_trap() (#101549)

1. It fixes the problem that llvm.trap() not getting the nomerge
attribute.
2. It sets nomerge flag for the node if the instruction has nomerge
arrtibute.

This is a copy of https://reviews.llvm.org/D146164. This only attempts
to fix `nomerge` for `__builtin_trap()`, `__debugbreak()`,
`__builtin_verbose_trap()`, not working for non-trap builtins.

Fixes #53011


  Commit: e89129ed30d64ed61e38269b1722adc18844a31c
      https://github.com/llvm/llvm-project/commit/e89129ed30d64ed61e38269b1722adc18844a31c
  Author: Slava Zakharin <szakharin at nvidia.com>
  Date:   2024-08-01 (Thu, 01 Aug 2024)

  Changed paths:
    M flang/runtime/stack.h

  Log Message:
  -----------
  [flang][runtime] Added missing RT_API_ATTRS. (#101536)


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

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

  Log Message:
  -----------
  [SCEV] Prove no-self-wrap from negative power of two step (#101416)

We have existing code which reasons about a step evenly dividing the
iteration space is a finite loop with a single exit implying
no-self-wrap. The sign of the step doesn't effect this.

---------

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


  Commit: 97f723bab0f48aca1416b9f946037b39b11d50e9
      https://github.com/llvm/llvm-project/commit/97f723bab0f48aca1416b9f946037b39b11d50e9
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-08-01 (Thu, 01 Aug 2024)

  Changed paths:
    M libc/config/gpu/entrypoints.txt
    M libc/src/stdio/printf_core/CMakeLists.txt

  Log Message:
  -----------
  [libc] Fix 'vasprintf' not working in non-fullbuild mode


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

  Changed paths:
    M libc/config/darwin/arm/entrypoints.txt
    M libc/config/darwin/x86_64/entrypoints.txt
    M libc/config/linux/aarch64/entrypoints.txt
    M libc/config/linux/arm/entrypoints.txt
    M libc/config/linux/riscv/entrypoints.txt
    M libc/config/linux/x86_64/entrypoints.txt
    M libc/config/windows/entrypoints.txt
    M libc/docs/math/index.rst
    M libc/spec/llvm_libc_ext.td
    M libc/spec/stdc.td
    M libc/src/math/CMakeLists.txt
    A libc/src/math/daddf128.h
    A libc/src/math/daddl.h
    A libc/src/math/ddivf128.h
    M libc/src/math/generic/CMakeLists.txt
    A libc/src/math/generic/daddf128.cpp
    A libc/src/math/generic/daddl.cpp
    A libc/src/math/generic/ddivf128.cpp
    M libc/test/src/math/CMakeLists.txt
    A libc/test/src/math/daddl_test.cpp
    M libc/test/src/math/smoke/CMakeLists.txt
    A libc/test/src/math/smoke/daddf128_test.cpp
    A libc/test/src/math/smoke/daddl_test.cpp
    A libc/test/src/math/smoke/ddivf128_test.cpp

  Log Message:
  -----------
  [libc][math][c23] Add dadd{l,f128} and ddiv{l,f128} C23 math functions (#100456)

- fadd removed because I need to add for different input types
- finishing rest of basic operations
- noticed duplicates will remove

---------

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


  Commit: c584c4227105c2aae332ee2a2099c9df6c3a3e1c
      https://github.com/llvm/llvm-project/commit/c584c4227105c2aae332ee2a2099c9df6c3a3e1c
  Author: Artem Pianykh <arr at fb.com>
  Date:   2024-08-01 (Thu, 01 Aug 2024)

  Changed paths:
    M compiler-rt/lib/asan/asan_globals.cpp
    A compiler-rt/test/asan/TestCases/Linux/odr_indicator_unregister.cpp

  Log Message:
  -----------
  [asan] Speed up ASan ODR indicator-based checking (#100923)

**Summary**:
When ASan checks for a potential ODR violation on a global it loops over
a linked list of all globals to find those with the matching value of an
indicator. With the default setting 'detect_odr_violation=1', ASan
doesn't report violations on same-size globals but it still has to
traverse the list. For larger binaries with a ton of shared libs and
globals (and a non-trivial volume of same-sized duplicates) this gets
extremely expensive.

This patch adds an indicator indexed (multi-)map of globals to speed up
the search.

> Note: asan used to use a map to store globals a while ago which was
replaced with a list when the codebase [moved off of
STL](https://github.com/llvm/llvm-project/commit/e4bada2c946e5399fc37bd67421de01c0047ad38).

Internally we see many examples where ODR checking takes *seconds* (even
double digits). With this patch it's practically free and
`__asan_register_globals` doesn't show up prominently in the perf
profile anymore.

There are several high-level questions:
1. I understand that the intent is that we hit the slow path rarely,
ideally once before the process dies with an error. But in practice we
hit the slow path a lot. It feels reasonable to keep the amount of work
bounded even in the worst case, even if it requires a bit of extra
memory. But if not, it'd be great to learn about the tradeoffs.
2. Poisoning based ODR checking remains on the slow path. Internally we
build everything with `-fsanitize-address-use-odr-indicator` so I'm not
sure if poisoning-based check would exhibit the same behavior (looking
at the code, the shape looks very similar, so it might?).
3. Globals with an ODR indicator of `-1` need to be skipped for the
purposes of ODR checking (cf.
https://github.com/llvm/llvm-project/commit/a257639a6935a2c63377784c5c9c3b73864a2582).
But they are still getting added to the list of globals and hence take
up space and slow down the iteration over the list of globals. It would
be a good saving if we could avoid adding them to the globals list.
4. Any reason to use a linked list instead of e.g. a vector to store
globals?

**Test Plan**:

* `cmake --build build --target check-asan` looks good
* Perf-wise things look good when linking against this version of
compiler-rt.

---------

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


  Commit: 289c0491791c4377af1a818b531d83c0cbb06525
      https://github.com/llvm/llvm-project/commit/289c0491791c4377af1a818b531d83c0cbb06525
  Author: Owen Anderson <resistor at mac.com>
  Date:   2024-08-01 (Thu, 01 Aug 2024)

  Changed paths:
    M llvm/include/llvm/Support/Allocator.h

  Log Message:
  -----------
  Simplify hot-path size computations in BumpPtrAllocator. (#101467)

~0.1% instruction count improvements


https://llvm-compile-time-tracker.com/compare.php?from=07d2709a17860a202d91781769a88837e4fb5f2a&to=d5cc47831ecd9f0a2b164b16da67f74b94e9aafc&stat=instructions:u


  Commit: 3af26be42e39405d9b3e1023853218dea20b5d1f
      https://github.com/llvm/llvm-project/commit/3af26be42e39405d9b3e1023853218dea20b5d1f
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2024-08-01 (Thu, 01 Aug 2024)

  Changed paths:
    M libcxx/include/string

  Log Message:
  -----------
  [libc++] Improve code gen for string's operator== (#100926)

If the string is too long for a short string, we can simply check for
the long bit. If that's false we can do an early return. This improves
the code gen slightly.


  Commit: 64946fdaf9864d8279da1c30e4d7214fe13d1427
      https://github.com/llvm/llvm-project/commit/64946fdaf9864d8279da1c30e4d7214fe13d1427
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-08-01 (Thu, 01 Aug 2024)

  Changed paths:
    M libcxx/docs/Status/Cxx23Issues.csv
    M libcxx/docs/Status/Cxx23Papers.csv

  Log Message:
  -----------
  [libc++][NFC] Fix inconsistent quoting and spacing in our CSV files

There were a few places where we didn't properly quote entries in the
CSV status pages, or where we followed inconsistent spacing. This causes
issue when trying to synchronize status pages with Github issues.


  Commit: 8d83faea33fe29e2a4dda11b341f5154e7e6d589
      https://github.com/llvm/llvm-project/commit/8d83faea33fe29e2a4dda11b341f5154e7e6d589
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-08-01 (Thu, 01 Aug 2024)

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

  Log Message:
  -----------
  [libc++] Add status page consistency change to git-blame-ignore-revs

To avoid breaking searchability of when a paper was implemented.


  Commit: 667598d84b16d1789ce90b231565e9e7bfdbe77d
      https://github.com/llvm/llvm-project/commit/667598d84b16d1789ce90b231565e9e7bfdbe77d
  Author: Haowei Wu <haowei at google.com>
  Date:   2024-08-01 (Thu, 01 Aug 2024)

  Changed paths:
    M clang/lib/CodeGen/CGExpr.cpp
    M clang/test/CodeGen/attr-nomerge.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
    M llvm/test/CodeGen/X86/nomerge.ll

  Log Message:
  -----------
  Revert "[Clang] Fix nomerge attribute not working with __builtin_trap(), __debugbreak(), __builtin_verbose_trap() (#101549)"

This reverts commit 5e84646982d1ec9bc94e48dde4b47f03c044a156, which
broke 'nomerge.ll' test on llvm bots.


  Commit: b45d36299e11708fe6de0104bc287328f7340e2d
      https://github.com/llvm/llvm-project/commit/b45d36299e11708fe6de0104bc287328f7340e2d
  Author: RoseZhang03 <rosezhang at google.com>
  Date:   2024-08-01 (Thu, 01 Aug 2024)

  Changed paths:
    M libc/fuzzing/math/CMakeLists.txt
    A libc/fuzzing/math/cos_fuzz.cpp
    M libc/fuzzing/math/sin_fuzz.cpp

  Log Message:
  -----------
  [libc] added cos function fuzzing test (#101556)


  Commit: 7471387b3d3d85ab6dbd24853837c988bffee1e3
      https://github.com/llvm/llvm-project/commit/7471387b3d3d85ab6dbd24853837c988bffee1e3
  Author: aaryanshukla <53713108+aaryanshukla at users.noreply.github.com>
  Date:   2024-08-01 (Thu, 01 Aug 2024)

  Changed paths:
    M libc/config/linux/arm/entrypoints.txt

  Log Message:
  -----------
  [libc][math][C23] removing daddl from arm32 (#101567)


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

  Changed paths:
    M llvm/include/llvm/Frontend/OpenMP/OMP.h
    M llvm/include/llvm/Frontend/OpenMP/OMPIRBuilder.h
    M llvm/lib/Frontend/OpenMP/CMakeLists.txt
    M llvm/lib/Frontend/OpenMP/OMP.cpp
    M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
    M offload/plugins-nextgen/common/include/ErrorReporting.h
    M offload/src/CMakeLists.txt
    M offload/test/sanitizer/kernel_crash.c
    M offload/test/sanitizer/kernel_crash_async.c
    M offload/test/sanitizer/kernel_crash_many.c
    M offload/test/sanitizer/kernel_crash_single.c
    M offload/test/sanitizer/kernel_trap.c
    A offload/test/sanitizer/kernel_trap.cpp
    M offload/test/sanitizer/kernel_trap_async.c
    M offload/test/sanitizer/kernel_trap_many.c

  Log Message:
  -----------
  [Offload][OpenMP] Prettify error messages by "demangling" the kernel name (#101400)

The kernel names for OpenMP are manually mangled and not ideal when we
report something to the user. We demangle them now, providing the
function and line number of the target region, together with the actual
kernel name.


  Commit: ae6dc64ec670891cb15049277e43133d4df7fb4b
      https://github.com/llvm/llvm-project/commit/ae6dc64ec670891cb15049277e43133d4df7fb4b
  Author: Zequan Wu <zequanwu at google.com>
  Date:   2024-08-01 (Thu, 01 Aug 2024)

  Changed paths:
    M clang/lib/CodeGen/CGExpr.cpp
    M clang/test/CodeGen/attr-nomerge.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
    M llvm/test/CodeGen/X86/nomerge.ll
    M llvm/test/MC/AArch64/local-bounds-single-trap.ll

  Log Message:
  -----------
  Reapply "[Clang] Fix nomerge attribute not working with __builtin_trap(), __debugbreak(), __builtin_verbose_trap() (#101549)"

This reverts commit 667598d84b16d1789ce90b231565e9e7bfdbe77d and fixes failed tests: llvm/test/CodeGen/X86/nomerge.ll and llvm/test/MC/AArch64/local-bounds-single-trap.ll.


  Commit: 1762e01cca0186f1862db561cfd9019164b8c654
      https://github.com/llvm/llvm-project/commit/1762e01cca0186f1862db561cfd9019164b8c654
  Author: Eli Friedman <efriedma at quicinc.com>
  Date:   2024-08-01 (Thu, 01 Aug 2024)

  Changed paths:
    M clang/lib/CodeGen/CGCall.cpp
    M clang/lib/CodeGen/CGExprAgg.cpp
    M clang/lib/CodeGen/CodeGenFunction.h
    M clang/test/CodeGen/arm-mve-intrinsics/vld24.c
    M clang/test/CodeGen/arm-vfp16-arguments2.cpp
    M clang/test/CodeGenCUDA/amdgpu-kernel-arg-pointer-type.cu
    M clang/test/CodeGenCUDA/builtins-amdgcn.cu
    M clang/test/CodeGenCUDA/builtins-spirv-amdgcn.cu
    M clang/test/CodeGenCXX/address-space-cast-coerce.cpp
    M clang/test/CodeGenCXX/cxx2a-consteval.cpp
    M clang/test/CodeGenCXX/trivial_abi.cpp
    M clang/test/CodeGenHIP/dpp-const-fold.hip
    M clang/test/CodeGenHIP/spirv-amdgcn-dpp-const-fold.hip
    M clang/test/CodeGenOpenCL/addr-space-struct-arg.cl
    M clang/test/CodeGenOpenCL/amdgpu-abi-struct-arg-byref.cl

  Log Message:
  -----------
  Fix codegen of consteval functions returning an empty class, and related issues (#93115)

Fix codegen of consteval functions returning an empty class, and related
issues

If a class is empty, don't store it to memory: the store might overwrite
useful data. Similarly, if a class has tail padding that might overlap
other fields, don't store the tail padding to memory.

The problem here turned out a bit more general than I initially thought:
basically all uses of EmitAggregateStore were broken. Call lowering had
a method that did mostly the right thing, though: CreateCoercedStore.
Adapt CreateCoercedStore so it always does the conservatively right
thing, and use it for both calls and ConstantExpr.

Also, along the way, fix the "overlap" bit in AggValueSlot: the bit was
set incorrectly for empty classes in some cases.

Fixes #93040.


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

  Changed paths:
    M llvm/lib/DebugInfo/DWARF/DWARFVerifier.cpp
    M llvm/test/tools/llvm-dwarfdump/X86/debug-names-verify-abbrev-forms.s
    A llvm/test/tools/llvm-dwarfdump/debug-names-local-tu-bad-die.yaml
    A llvm/test/tools/llvm-dwarfdump/debug-names-local-tu-bad-tu-index.yaml

  Log Message:
  -----------
  Add support for verifying local type units in .debug_names. (#101133)

This patch adds support for verifying local type units in .debug_names
section. It adds a test to test if the TU index is valid, and a test
that tests that an error is found inside the name entry for a type unit.
We don't need to test all other errors in the name entry because these
are essentially identical to compile unit entries, they just use a
different DWARF unit offset index.


  Commit: 0142bd6b15aad04ee3a4391af3e47250077a586f
      https://github.com/llvm/llvm-project/commit/0142bd6b15aad04ee3a4391af3e47250077a586f
  Author: RoseZhang03 <rosezhang at google.com>
  Date:   2024-08-01 (Thu, 01 Aug 2024)

  Changed paths:
    M libc/fuzzing/math/CMakeLists.txt
    M libc/fuzzing/math/cos_fuzz.cpp
    M libc/fuzzing/math/sin_fuzz.cpp
    A libc/fuzzing/math/tan_fuzz.cpp

  Log Message:
  -----------
  [libc] created tan function fuzzer (#101570)

Also edited file header formatting on sin_fuz and cos_fuzz


  Commit: c89e9e7d9e9d7c4b30e2d911f4d68ec66e6c68d8
      https://github.com/llvm/llvm-project/commit/c89e9e7d9e9d7c4b30e2d911f4d68ec66e6c68d8
  Author: Andrey Timonin <112198242+EtoAndruwa at users.noreply.github.com>
  Date:   2024-08-02 (Fri, 02 Aug 2024)

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

  Log Message:
  -----------
  [mlir][emitc] Fix EmitC dialect's operations' descriptions (#101523)

- Added the dialect's prefix to operations' descriptions to follow the
same style inside the TableGen file.
- Minor changes in the 'emitc.yield' operation's description.


  Commit: 7f1968625a607fb49a2b9a67f3c8fb2892cf4839
      https://github.com/llvm/llvm-project/commit/7f1968625a607fb49a2b9a67f3c8fb2892cf4839
  Author: Jeremy Kun <jkun at google.com>
  Date:   2024-08-01 (Thu, 01 Aug 2024)

  Changed paths:
    A mlir/docs/Tutorials/MlirOpt.md
    M mlir/lib/Pass/PassManagerOptions.cpp
    A mlir/test/Examples/mlir-opt/ctlz.mlir
    A mlir/test/Examples/mlir-opt/ctlz_pipeline.mlir
    A mlir/test/Examples/mlir-opt/loop_fusion.mlir
    A mlir/test/Examples/mlir-opt/loop_fusion_default.mlir
    A mlir/test/Examples/mlir-opt/loop_fusion_options.mlir

  Log Message:
  -----------
  Add a tutorial on mlir-opt (#96105)

This tutorial gives an introduction to the `mlir-opt` tool, focusing on
how to run basic passes with and without options, run pass pipelines
from the CLI, and point out particularly useful flags.

---------

Co-authored-by: Jeremy Kun <j2kun at users.noreply.github.com>
Co-authored-by: Mehdi Amini <joker.eph at gmail.com>


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

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

  Log Message:
  -----------
  [SandboxIR] Implement UnaryInstruction class (#101541)

This patch implements sandboxir::UnaryInstruction class and updates
sandboxir::LoadInst and sandboxir::CastInst to inherit from it instead
of sandboxir::Instruction.


  Commit: 7b0f14394d578baf54c44571b3d94e3b027c2261
      https://github.com/llvm/llvm-project/commit/7b0f14394d578baf54c44571b3d94e3b027c2261
  Author: Michael Liao <michael.hliao at gmail.com>
  Date:   2024-08-01 (Thu, 01 Aug 2024)

  Changed paths:
    M llvm/test/CodeGen/M68k/pipeline.ll

  Log Message:
  -----------
  [M68k] Fix compilation pipeline check

- After 'lowerConstantIntrinsics' is merged into pre-isel lowering


  Commit: 54c9404976118b0db5b20448e976db7a8c5b7073
      https://github.com/llvm/llvm-project/commit/54c9404976118b0db5b20448e976db7a8c5b7073
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2024-08-01 (Thu, 01 Aug 2024)

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

  Log Message:
  -----------
  [asan] Avoid global ~DenseMap()

Follow up to #100923


  Commit: 7ad073a45b411d3752668dff61963d356c98145d
      https://github.com/llvm/llvm-project/commit/7ad073a45b411d3752668dff61963d356c98145d
  Author: Jason Molenda <jmolenda at apple.com>
  Date:   2024-08-01 (Thu, 01 Aug 2024)

  Changed paths:
    M lldb/include/lldb/Core/Module.h
    M lldb/include/lldb/Symbol/UnwindTable.h
    M lldb/source/Core/Module.cpp
    M lldb/source/Symbol/UnwindTable.cpp

  Log Message:
  -----------
  [lldb] Change Module to have a concrete UnwindTable, update (#101130)

Currently a Module has a std::optional<UnwindTable> which is created
when the UnwindTable is requested from outside the Module. The idea is
to delay its creation until the Module has an ObjectFile initialized,
which will have been done by the time we're doing an unwind.

However, Module::GetUnwindTable wasn't doing any locking, so it was
possible for two threads to ask for the UnwindTable for the first time,
one would be created and returned while another thread would create one,
destroy the first in the process of emplacing it. It was an uncommon
crash, but it was possible.

Grabbing the Module's mutex would be one way to address it, but when
loading ELF binaries, we start creating the SymbolTable on one thread
(ObjectFileELF) grabbing the Module's mutex, and then spin up worker
threads to parse the individual DWARF compilation units, which then try
to also get the UnwindTable and deadlock if they try to get the Module's
mutex.

This changes Module to have a concrete UnwindTable as an ivar, and when
it adds an ObjectFile or SymbolFileVendor, it will call the Update
method on it, which will re-evaluate which sections exist in the
ObjectFile/SymbolFile. UnwindTable used to have an Initialize method
which set all the sections, and an Update method which would set some of
them if they weren't set. I unified these with the Initialize method
taking a `force` option to re-initialize the section pointers even if
they had been done already before.

This is addressing a rare crash report we've received, and also a
failure Adrian spotted on the -fsanitize=address CI bot last week, it's
still uncommon with ASAN but it can happen with the standard testsuite.

rdar://128876433


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

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

  Log Message:
  -----------
  [Bazel] Port f3bfc56327df821801caa4ae20995f67f8589a19


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

  Changed paths:
    M clang/test/CodeGen/attr-nomerge.cpp

  Log Message:
  -----------
  [test] Fix attr-nomerge.cpp after ae6dc64ec670891cb15049277e43133d4df7fb4b


  Commit: 4461b69022ebd43350f560d4643ba6f373d891b7
      https://github.com/llvm/llvm-project/commit/4461b69022ebd43350f560d4643ba6f373d891b7
  Author: Longsheng Mou <moulongsheng at huawei.com>
  Date:   2024-08-02 (Fri, 02 Aug 2024)

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

  Log Message:
  -----------
  [X86_32][C++] fix 0 sized struct case in vaarg. (#86388)

struct SuperEmpty { struct{ int a[0];} b;};
Such 0 sized structs in c++ mode can not be ignored in i386 for that c++
fields are never empty.But when EmitVAArg, its size is 0, so that
va_list not increase.Maybe we can just Ignore this kind of arguments,
like X86_64 did. Fix #86385.


  Commit: 6867324eeec7c4f297c2f787d9c7b4d751a384c7
      https://github.com/llvm/llvm-project/commit/6867324eeec7c4f297c2f787d9c7b4d751a384c7
  Author: Longsheng Mou <moulongsheng at huawei.com>
  Date:   2024-08-02 (Fri, 02 Aug 2024)

  Changed paths:
    M mlir/lib/Dialect/Bufferization/Transforms/DropEquivalentBufferResults.cpp

  Log Message:
  -----------
  [mlir][bufferization] Improve performance of DropEquivalentBufferResultsPass (#101281)

By using DenseMap to minimize the traveral time of callOps, and the
efficiency of running this pass has been greatly improved.


  Commit: e3d9b01a36afbd8e630a5da2a1d3681055a75069
      https://github.com/llvm/llvm-project/commit/e3d9b01a36afbd8e630a5da2a1d3681055a75069
  Author: Mel Chen <mel.chen at sifive.com>
  Date:   2024-08-02 (Fri, 02 Aug 2024)

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

  Log Message:
  -----------
  [VPlan][NFC] Make VPValue pointer const. (#101334)


  Commit: ca26ea28ed10c7fd642bfbdf4f897a4362674460
      https://github.com/llvm/llvm-project/commit/ca26ea28ed10c7fd642bfbdf4f897a4362674460
  Author: Andrea Faulds <andrea.faulds at amd.com>
  Date:   2024-08-01 (Thu, 01 Aug 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVBase.td
    M mlir/lib/Target/SPIRV/Deserialization/Deserializer.cpp
    M mlir/lib/Target/SPIRV/Serialization/Serializer.cpp
    M mlir/test/Target/SPIRV/decorations.mlir

  Log Message:
  -----------
  [mlir][spirv] Add definitions and (de)serialization for FPRoundingMode (#101546)


  Commit: 9373a43218ba7d55e2ec5c52147ec39daaf8f177
      https://github.com/llvm/llvm-project/commit/9373a43218ba7d55e2ec5c52147ec39daaf8f177
  Author: Shilei Tian <i at tianshilei.me>
  Date:   2024-08-01 (Thu, 01 Aug 2024)

  Changed paths:
    M llvm/lib/Transforms/IPO/AttributorAttributes.cpp
    M llvm/test/Transforms/Attributor/memory_locations_gpu.ll

  Log Message:
  -----------
  [Attributor] Indicate optimistic fixed point if an instruction already has non-zero address space (#101589)


  Commit: 6c375ae7a4d97a9947fdc16be4d86e9eba3dde4c
      https://github.com/llvm/llvm-project/commit/6c375ae7a4d97a9947fdc16be4d86e9eba3dde4c
  Author: Zequan Wu <zequanwu at google.com>
  Date:   2024-08-01 (Thu, 01 Aug 2024)

  Changed paths:
    M clang/test/CodeGen/attr-nomerge.cpp

  Log Message:
  -----------
  Fix attr-nomerge.cpp with fixed triple


  Commit: e7f73c03dfe6c895b2dbe6d8d1d03546b87888c4
      https://github.com/llvm/llvm-project/commit/e7f73c03dfe6c895b2dbe6d8d1d03546b87888c4
  Author: Shilei Tian <i at tianshilei.me>
  Date:   2024-08-01 (Thu, 01 Aug 2024)

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

  Log Message:
  -----------
  [Attributor] Use `getPointerAddressSpace` to replace a cast followed by a `getAddressSpace`


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

  Changed paths:
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vfncvt.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vfncvt_f_f.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vfwcvt.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vfwcvt_f_f.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vle16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vle16ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vloxei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vloxei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vloxei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vloxei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vloxseg2ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vloxseg2ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vloxseg2ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vloxseg2ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vloxseg3ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vloxseg3ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vloxseg3ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vloxseg3ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vloxseg4ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vloxseg4ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vloxseg4ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vloxseg4ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vloxseg5ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vloxseg5ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vloxseg5ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vloxseg5ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vloxseg6ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vloxseg6ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vloxseg6ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vloxseg6ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vloxseg7ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vloxseg7ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vloxseg7ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vloxseg7ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vloxseg8ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vloxseg8ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vloxseg8ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vloxseg8ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vlse16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vlseg2e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vlseg2e16ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vlseg2e32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vlseg2e32ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vlseg2e64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vlseg2e64ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vlseg3e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vlseg3e16ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vlseg4e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vlseg4e16ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vlseg4e32ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vlseg5e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vlseg5e16ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vlseg6e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vlseg6e16ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vlseg7e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vlseg7e16ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vlseg8e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vlseg8e16ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vlsseg2e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vlsseg3e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vlsseg4e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vlsseg5e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vlsseg6e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vlsseg7e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vlsseg8e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vluxei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vluxei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vluxei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vluxei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vluxseg2ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vluxseg2ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vluxseg2ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vluxseg2ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vluxseg3ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vluxseg3ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vluxseg3ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vluxseg3ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vluxseg4ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vluxseg4ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vluxseg4ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vluxseg4ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vluxseg5ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vluxseg5ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vluxseg5ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vluxseg5ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vluxseg6ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vluxseg6ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vluxseg6ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vluxseg6ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vluxseg7ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vluxseg7ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vluxseg7ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vluxseg7ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vluxseg8ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vluxseg8ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vluxseg8ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vluxseg8ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vmerge.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vmv.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vreinterpret.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vse16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsoxei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsoxei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsoxei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsoxei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsoxseg2ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsoxseg2ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsoxseg2ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsoxseg2ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsoxseg3ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsoxseg3ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsoxseg3ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsoxseg3ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsoxseg4ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsoxseg4ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsoxseg4ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsoxseg4ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsoxseg5ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsoxseg5ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsoxseg5ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsoxseg5ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsoxseg6ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsoxseg6ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsoxseg6ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsoxseg6ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsoxseg7ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsoxseg7ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsoxseg7ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsoxseg7ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsoxseg8ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsoxseg8ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsoxseg8ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsoxseg8ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsse16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsseg2e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsseg3e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsseg4e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsseg5e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsseg6e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsseg7e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsseg8e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vssseg2e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vssseg3e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vssseg4e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vssseg5e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vssseg6e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vssseg7e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vssseg8e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsuxei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsuxei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsuxei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsuxei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsuxseg2ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsuxseg2ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsuxseg2ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsuxseg2ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsuxseg3ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsuxseg3ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsuxseg3ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsuxseg3ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsuxseg4ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsuxseg4ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsuxseg4ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsuxseg4ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsuxseg5ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsuxseg5ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsuxseg5ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsuxseg5ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsuxseg6ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsuxseg6ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsuxseg6ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsuxseg6ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsuxseg7ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsuxseg7ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsuxseg7ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsuxseg7ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsuxseg8ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsuxseg8ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsuxseg8ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsuxseg8ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vfncvt.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vfncvt_f_f.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vfwcvt.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vfwcvt_f_f.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vle16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vle16ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vloxei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vloxei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vloxei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vloxei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vloxseg2ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vloxseg2ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vloxseg2ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vloxseg2ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vloxseg3ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vloxseg3ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vloxseg3ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vloxseg3ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vloxseg4ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vloxseg4ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vloxseg4ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vloxseg4ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vloxseg5ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vloxseg5ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vloxseg5ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vloxseg5ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vloxseg6ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vloxseg6ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vloxseg6ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vloxseg6ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vloxseg7ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vloxseg7ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vloxseg7ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vloxseg7ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vloxseg8ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vloxseg8ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vloxseg8ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vloxseg8ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vlse16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vlseg2e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vlseg2e16ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vlseg3e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vlseg3e16ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vlseg4e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vlseg4e16ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vlseg5e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vlseg5e16ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vlseg6e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vlseg6e16ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vlseg7e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vlseg7e16ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vlseg8e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vlseg8e16ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vlsseg2e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vlsseg3e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vlsseg4e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vlsseg5e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vlsseg6e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vlsseg7e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vlsseg8e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vluxei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vluxei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vluxei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vluxei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vluxseg2ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vluxseg2ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vluxseg2ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vluxseg2ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vluxseg3ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vluxseg3ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vluxseg3ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vluxseg3ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vluxseg4ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vluxseg4ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vluxseg4ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vluxseg4ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vluxseg5ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vluxseg5ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vluxseg5ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vluxseg5ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vluxseg6ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vluxseg6ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vluxseg6ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vluxseg6ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vluxseg7ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vluxseg7ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vluxseg7ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vluxseg7ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vluxseg8ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vluxseg8ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vluxseg8ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vluxseg8ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vmerge.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vmv.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vreinterpret.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vse16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsoxei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsoxei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsoxei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsoxei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsoxseg2ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsoxseg2ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsoxseg2ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsoxseg2ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsoxseg3ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsoxseg3ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsoxseg3ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsoxseg3ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsoxseg4ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsoxseg4ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsoxseg4ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsoxseg4ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsoxseg5ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsoxseg5ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsoxseg5ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsoxseg5ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsoxseg6ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsoxseg6ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsoxseg6ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsoxseg6ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsoxseg7ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsoxseg7ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsoxseg7ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsoxseg7ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsoxseg8ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsoxseg8ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsoxseg8ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsoxseg8ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsse16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsseg2e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsseg3e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsseg4e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsseg5e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsseg6e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsseg7e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsseg8e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vssseg2e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vssseg3e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vssseg4e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vssseg5e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vssseg6e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vssseg7e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vssseg8e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsuxei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsuxei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsuxei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsuxei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsuxseg2ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsuxseg2ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsuxseg2ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsuxseg2ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsuxseg3ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsuxseg3ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsuxseg3ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsuxseg3ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsuxseg4ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsuxseg4ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsuxseg4ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsuxseg4ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsuxseg5ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsuxseg5ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsuxseg5ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsuxseg5ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsuxseg6ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsuxseg6ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsuxseg6ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsuxseg6ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsuxseg7ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsuxseg7ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsuxseg7ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsuxseg7ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsuxseg8ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsuxseg8ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsuxseg8ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsuxseg8ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vfncvt.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vfncvt_f_f.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vfwcvt.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vfwcvt_f_f.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vle16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vle16ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vloxei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vloxei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vloxei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vloxei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vloxseg2ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vloxseg2ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vloxseg2ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vloxseg2ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vloxseg3ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vloxseg3ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vloxseg3ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vloxseg3ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vloxseg4ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vloxseg4ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vloxseg4ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vloxseg4ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vloxseg5ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vloxseg5ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vloxseg5ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vloxseg5ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vloxseg6ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vloxseg6ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vloxseg6ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vloxseg6ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vloxseg7ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vloxseg7ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vloxseg7ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vloxseg7ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vloxseg8ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vloxseg8ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vloxseg8ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vloxseg8ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlse16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlseg2e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlseg2e16ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlseg3e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlseg3e16ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlseg4e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlseg4e16ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlseg5e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlseg5e16ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlseg6e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlseg6e16ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlseg7e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlseg7e16ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlseg8e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlseg8e16ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlsseg2e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlsseg3e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlsseg4e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlsseg5e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlsseg6e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlsseg7e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlsseg8e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vluxei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vluxei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vluxei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vluxei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vluxseg2ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vluxseg2ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vluxseg2ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vluxseg2ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vluxseg3ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vluxseg3ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vluxseg3ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vluxseg3ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vluxseg4ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vluxseg4ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vluxseg4ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vluxseg4ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vluxseg5ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vluxseg5ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vluxseg5ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vluxseg5ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vluxseg6ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vluxseg6ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vluxseg6ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vluxseg6ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vluxseg7ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vluxseg7ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vluxseg7ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vluxseg7ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vluxseg8ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vluxseg8ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vluxseg8ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vluxseg8ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vmerge.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vmv.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vfncvt.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vfncvt_f_f.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vfwcvt.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vfwcvt_f_f.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vle16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vle16ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vloxei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vloxei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vloxei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vloxei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vloxseg2ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vloxseg2ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vloxseg2ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vloxseg2ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vloxseg3ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vloxseg3ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vloxseg3ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vloxseg3ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vloxseg4ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vloxseg4ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vloxseg4ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vloxseg4ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vloxseg5ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vloxseg5ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vloxseg5ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vloxseg5ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vloxseg6ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vloxseg6ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vloxseg6ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vloxseg6ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vloxseg7ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vloxseg7ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vloxseg7ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vloxseg7ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vloxseg8ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vloxseg8ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vloxseg8ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vloxseg8ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlse16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlseg2e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlseg2e16ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlseg3e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlseg3e16ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlseg4e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlseg4e16ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlseg5e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlseg5e16ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlseg6e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlseg6e16ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlseg7e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlseg7e16ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlseg8e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlseg8e16ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlsseg2e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlsseg3e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlsseg4e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlsseg5e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlsseg6e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlsseg7e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlsseg8e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vluxei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vluxei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vluxei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vluxei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vluxseg2ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vluxseg2ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vluxseg2ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vluxseg2ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vluxseg3ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vluxseg3ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vluxseg3ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vluxseg3ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vluxseg4ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vluxseg4ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vluxseg4ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vluxseg4ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vluxseg5ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vluxseg5ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vluxseg5ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vluxseg5ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vluxseg6ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vluxseg6ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vluxseg6ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vluxseg6ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vluxseg7ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vluxseg7ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vluxseg7ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vluxseg7ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vluxseg8ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vluxseg8ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vluxseg8ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vluxseg8ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vmerge.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vmv.c
    R clang/test/CodeGen/RISCV/rvv-intrinsics-handcrafted/zvfhmin.c

  Log Message:
  -----------
  [RISCV] Use Zvhmin instead of Zvfh on RUN lines for some intrinsic tests. NFC (#101540)

Loads/stores/reinterpret/vfncvt.f.f.w/vfwcvt.f.f.v/vmerge/vmv.v.v are
all expected to work for f16 vectors with Zvfhmin.

Remove the handcrafted Zvfhmin test that partially tested this.

Splits the vfwcvt.f.f.v and vfncvt.f.f.w tests into their own file so we
can have a separate RUN line from the float<->int conversions.


  Commit: 8b26c02caaa002edc2d70af9e6a8024c4b1343cf
      https://github.com/llvm/llvm-project/commit/8b26c02caaa002edc2d70af9e6a8024c4b1343cf
  Author: hev <wangrui at loongson.cn>
  Date:   2024-08-02 (Fri, 02 Aug 2024)

  Changed paths:
    M llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
    M llvm/lib/Target/LoongArch/LoongArchISelLowering.h
    M llvm/test/CodeGen/LoongArch/unaligned-memcpy-inline.ll

  Log Message:
  -----------
  [LoongArch] Align stack objects passed to memory intrinsics (#101309)

Memcpy, and other memory intrinsics, typically try to use wider
load/store if the source and destination addresses are aligned. In
CodeGenPrepare, look for calls to memory intrinsics and, if the object
is on the stack, align it to 4-byte (32-bit) or 8-byte (64-bit)
boundaries if it is large enough that we expect memcpy to use wider
load/store instructions to copy it.

Fixes #101295


  Commit: aca971d336d9c7650120fc0fd6dfe58866408216
      https://github.com/llvm/llvm-project/commit/aca971d336d9c7650120fc0fd6dfe58866408216
  Author: Koakuma <koachan at protonmail.com>
  Date:   2024-08-02 (Fri, 02 Aug 2024)

  Changed paths:
    M llvm/include/llvm/BinaryFormat/ELF.h
    M llvm/lib/Target/Sparc/MCTargetDesc/SparcAsmBackend.cpp
    M llvm/lib/Target/Sparc/MCTargetDesc/SparcELFObjectWriter.cpp
    M llvm/lib/Target/Sparc/MCTargetDesc/SparcMCTargetDesc.cpp
    M llvm/lib/Target/Sparc/MCTargetDesc/SparcMCTargetDesc.h
    M llvm/lib/Target/Sparc/MCTargetDesc/SparcTargetStreamer.cpp
    M llvm/lib/Target/Sparc/MCTargetDesc/SparcTargetStreamer.h
    M llvm/lib/Target/Sparc/Sparc.td
    M llvm/test/MC/Sparc/elf-sparc-machine-type.s

  Log Message:
  -----------
  [SPARC][IAS] Add v8plus feature bit (#101367)

Implement handling for `v8plus` feature bit to allow the user to switch
between V8 and V8+ mode with 32-bit code.
Currently this only sets the appropriate ELF machine type and flags;
codegen changes will be done in future patches.

This is done as a prerequisite for `-mv8plus` flag on clang (#98713).


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

  Changed paths:
    M clang/include/clang/Basic/Builtins.td
    M clang/lib/Basic/Builtins.cpp
    M clang/lib/CodeGen/CGBuiltin.cpp
    M clang/lib/Headers/hlsl/hlsl_intrinsics.h
    M clang/lib/Sema/SemaHLSL.cpp
    A clang/test/SemaHLSL/BuiltIns/all-errors.hlsl
    M clang/test/SemaHLSL/BuiltIns/any-errors.hlsl

  Log Message:
  -----------
  [HLSL] cleanup builtin names elementwise usage (#101543)

Remove elementwise description for builtins that don't perform
elementwise operations.


  Commit: 10bad2c8d7be1bbb726c536dd306da3cae2247b4
      https://github.com/llvm/llvm-project/commit/10bad2c8d7be1bbb726c536dd306da3cae2247b4
  Author: Phoebe Wang <phoebe.wang at intel.com>
  Date:   2024-08-02 (Fri, 02 Aug 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Basic/BuiltinsX86.def
    M clang/include/clang/Driver/Options.td
    M clang/lib/Basic/Targets/X86.cpp
    M clang/lib/Basic/Targets/X86.h
    M clang/lib/Driver/ToolChains/Arch/X86.cpp
    M clang/lib/Headers/CMakeLists.txt
    A clang/lib/Headers/avx10_2_512niintrin.h
    A clang/lib/Headers/avx10_2niintrin.h
    M clang/lib/Headers/immintrin.h
    M clang/lib/Sema/SemaX86.cpp
    A clang/test/CodeGen/X86/avx10_2_512ni-builtins.c
    A clang/test/CodeGen/X86/avx10_2ni-builtins.c
    M clang/test/CodeGen/attr-target-x86.c
    M clang/test/CodeGen/target-builtin-noerror.c
    M clang/test/Driver/x86-target-features.c
    M clang/test/Preprocessor/x86_target_features.c
    M compiler-rt/lib/builtins/cpu_model/x86.c
    M llvm/docs/ReleaseNotes.rst
    M llvm/include/llvm/IR/IntrinsicsX86.td
    M llvm/include/llvm/Support/X86DisassemblerDecoderCommon.h
    M llvm/include/llvm/TargetParser/X86TargetParser.def
    M llvm/lib/Target/X86/Disassembler/X86Disassembler.cpp
    M llvm/lib/Target/X86/Disassembler/X86DisassemblerDecoder.h
    M llvm/lib/Target/X86/MCTargetDesc/X86BaseInfo.h
    M llvm/lib/Target/X86/MCTargetDesc/X86MCCodeEmitter.cpp
    M llvm/lib/Target/X86/X86.td
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/lib/Target/X86/X86ISelLowering.h
    A llvm/lib/Target/X86/X86InstrAVX10.td
    M llvm/lib/Target/X86/X86InstrFormats.td
    M llvm/lib/Target/X86/X86InstrFragmentsSIMD.td
    M llvm/lib/Target/X86/X86InstrInfo.td
    M llvm/lib/Target/X86/X86InstrPredicates.td
    M llvm/lib/Target/X86/X86InstrSSE.td
    M llvm/lib/Target/X86/X86IntrinsicsInfo.h
    M llvm/lib/TargetParser/Host.cpp
    M llvm/lib/TargetParser/X86TargetParser.cpp
    A llvm/test/CodeGen/X86/avx10_2_512ni-intrinsics.ll
    A llvm/test/CodeGen/X86/avx10_2ni-intrinsics.ll
    A llvm/test/MC/Disassembler/X86/avx10_2ni-32.txt
    A llvm/test/MC/Disassembler/X86/avx10_2ni-64.txt
    A llvm/test/MC/X86/avx10_2ni-32-intel.s
    A llvm/test/MC/X86/avx10_2ni-64-att.s
    M llvm/test/TableGen/x86-fold-tables.inc
    M llvm/utils/TableGen/X86DisassemblerTables.cpp
    M llvm/utils/TableGen/X86ManualInstrMapping.def
    M llvm/utils/TableGen/X86RecognizableInstr.cpp
    M llvm/utils/TableGen/X86RecognizableInstr.h

  Log Message:
  -----------
  [X86][AVX10.2] Support AVX10.2 option and VMPSADBW/VADDP[D,H,S] new instructions (#101452)

Ref.: https://cdrdv2.intel.com/v1/dl/getContent/828965


  Commit: 358593ba87a18a8e85dafc0683c5e7af94009135
      https://github.com/llvm/llvm-project/commit/358593ba87a18a8e85dafc0683c5e7af94009135
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-08-01 (Thu, 01 Aug 2024)

  Changed paths:
    M llvm/utils/TableGen/Common/CodeGenRegisters.h

  Log Message:
  -----------
  [TableGen] Use std::move. NFC

Fixes #101408.


  Commit: 8abdf7cc71a72a67ae7b3e60002943e84c8ab218
      https://github.com/llvm/llvm-project/commit/8abdf7cc71a72a67ae7b3e60002943e84c8ab218
  Author: Owen Pan <owenpiano at gmail.com>
  Date:   2024-08-01 (Thu, 01 Aug 2024)

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

  Log Message:
  -----------
  [clang-format] Fix a misannotation of PointerOrReference (#101291)

Fixes #101138.


  Commit: 2e0588d5e1c9e9a0936846173dbc488f462a6c2d
      https://github.com/llvm/llvm-project/commit/2e0588d5e1c9e9a0936846173dbc488f462a6c2d
  Author: Phoebe Wang <phoebe.wang at intel.com>
  Date:   2024-08-02 (Fri, 02 Aug 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Basic/BuiltinsX86.def
    M clang/include/clang/Driver/Options.td
    M clang/lib/Basic/Targets/X86.cpp
    M clang/lib/Basic/Targets/X86.h
    M clang/lib/Driver/ToolChains/Arch/X86.cpp
    M clang/lib/Headers/CMakeLists.txt
    R clang/lib/Headers/avx10_2_512niintrin.h
    R clang/lib/Headers/avx10_2niintrin.h
    M clang/lib/Headers/immintrin.h
    M clang/lib/Sema/SemaX86.cpp
    R clang/test/CodeGen/X86/avx10_2_512ni-builtins.c
    R clang/test/CodeGen/X86/avx10_2ni-builtins.c
    M clang/test/CodeGen/attr-target-x86.c
    M clang/test/CodeGen/target-builtin-noerror.c
    M clang/test/Driver/x86-target-features.c
    M clang/test/Preprocessor/x86_target_features.c
    M compiler-rt/lib/builtins/cpu_model/x86.c
    M llvm/docs/ReleaseNotes.rst
    M llvm/include/llvm/IR/IntrinsicsX86.td
    M llvm/include/llvm/Support/X86DisassemblerDecoderCommon.h
    M llvm/include/llvm/TargetParser/X86TargetParser.def
    M llvm/lib/Target/X86/Disassembler/X86Disassembler.cpp
    M llvm/lib/Target/X86/Disassembler/X86DisassemblerDecoder.h
    M llvm/lib/Target/X86/MCTargetDesc/X86BaseInfo.h
    M llvm/lib/Target/X86/MCTargetDesc/X86MCCodeEmitter.cpp
    M llvm/lib/Target/X86/X86.td
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/lib/Target/X86/X86ISelLowering.h
    R llvm/lib/Target/X86/X86InstrAVX10.td
    M llvm/lib/Target/X86/X86InstrFormats.td
    M llvm/lib/Target/X86/X86InstrFragmentsSIMD.td
    M llvm/lib/Target/X86/X86InstrInfo.td
    M llvm/lib/Target/X86/X86InstrPredicates.td
    M llvm/lib/Target/X86/X86InstrSSE.td
    M llvm/lib/Target/X86/X86IntrinsicsInfo.h
    M llvm/lib/TargetParser/Host.cpp
    M llvm/lib/TargetParser/X86TargetParser.cpp
    R llvm/test/CodeGen/X86/avx10_2_512ni-intrinsics.ll
    R llvm/test/CodeGen/X86/avx10_2ni-intrinsics.ll
    R llvm/test/MC/Disassembler/X86/avx10_2ni-32.txt
    R llvm/test/MC/Disassembler/X86/avx10_2ni-64.txt
    R llvm/test/MC/X86/avx10_2ni-32-intel.s
    R llvm/test/MC/X86/avx10_2ni-64-att.s
    M llvm/test/TableGen/x86-fold-tables.inc
    M llvm/utils/TableGen/X86DisassemblerTables.cpp
    M llvm/utils/TableGen/X86ManualInstrMapping.def
    M llvm/utils/TableGen/X86RecognizableInstr.cpp
    M llvm/utils/TableGen/X86RecognizableInstr.h

  Log Message:
  -----------
  Revert "[X86][AVX10.2] Support AVX10.2 option and VMPSADBW/VADDP[D,H,S] new instructions" (#101612)

Reverts llvm/llvm-project#101452

There are several buildbot failed. Revert first.


  Commit: a2855f51208cd9596b94003e3bf6836b2a7d5971
      https://github.com/llvm/llvm-project/commit/a2855f51208cd9596b94003e3bf6836b2a7d5971
  Author: Petr Hosek <phosek at google.com>
  Date:   2024-08-01 (Thu, 01 Aug 2024)

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

  Log Message:
  -----------
  [CMake][Fuchsia] Use standard spelling for Arm baremetal targets (#101302)

It's more common to use `none` rather than `unknown` for the OS
component in Arm baremetal targets.


  Commit: 983869a0365c685049ea9015a2b4d7241b98fd4f
      https://github.com/llvm/llvm-project/commit/983869a0365c685049ea9015a2b4d7241b98fd4f
  Author: Petr Hosek <phosek at google.com>
  Date:   2024-08-01 (Thu, 01 Aug 2024)

  Changed paths:
    M clang/lib/Driver/ToolChains/BareMetal.cpp
    A clang/test/Driver/Inputs/baremetal_arm/lib/crt0.o
    A clang/test/Driver/Inputs/basic_baremetal_tree/lib/armv6m-unknown-none-eabi/crt0.o
    M clang/test/Driver/baremetal.cpp

  Log Message:
  -----------
  [Driver] Include crt0.o in the baremetal link (#101258)

The common baremetal libc implementations already provide crt0.o and GCC
automatically links it so this improves parity.


  Commit: 840ec59a0bbf0f1042d5c4cbc82c82faa6223ebe
      https://github.com/llvm/llvm-project/commit/840ec59a0bbf0f1042d5c4cbc82c82faa6223ebe
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-08-01 (Thu, 01 Aug 2024)

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

  Log Message:
  -----------
  [RISCV] Refactor setOperationActions for scalar ISD::ABS. NFC


  Commit: 60a7d33106d3cd645d3100a8a935a1e3837f885d
      https://github.com/llvm/llvm-project/commit/60a7d33106d3cd645d3100a8a935a1e3837f885d
  Author: Piotr Fusik <p.fusik at samsung.com>
  Date:   2024-08-02 (Fri, 02 Aug 2024)

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

  Log Message:
  -----------
  [LVI][NFC] Delete an outdated comment (#101504)

Transitioned from inheritance to has-a relationship in 9db7948e


  Commit: b99629dff39ff3babe94cc4050e89f983d431609
      https://github.com/llvm/llvm-project/commit/b99629dff39ff3babe94cc4050e89f983d431609
  Author: agozillon <Andrew.Gozillon at amd.com>
  Date:   2024-08-02 (Fri, 02 Aug 2024)

  Changed paths:
    M .git-blame-ignore-revs
    M .github/CODEOWNERS
    M .github/new-prs-labeler.yml
    M .github/workflows/issue-write.yml
    M .github/workflows/libcxx-build-and-test.yaml
    M .github/workflows/llvm-project-tests.yml
    M .github/workflows/pr-request-release-note.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-sources.yml
    M .github/workflows/release-tasks.yml
    A .github/workflows/unprivileged-download-artifact/action.yml
    M .github/workflows/version-check.yml
    M bolt/CMakeLists.txt
    M bolt/docs/CommandLineArgumentReference.md
    A bolt/docs/HeatmapHeader.png
    M bolt/docs/Heatmaps.md
    M bolt/docs/OptimizingClang.md
    A bolt/docs/OptimizingLinux.md
    M bolt/docs/generate_doc.py
    M bolt/include/bolt/Core/BinaryBasicBlock.h
    M bolt/include/bolt/Core/BinaryContext.h
    M bolt/include/bolt/Core/BinaryFunction.h
    A bolt/include/bolt/Core/BinaryFunctionCallGraph.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
    M bolt/include/bolt/Core/DebugNames.h
    M bolt/include/bolt/Core/GDBIndex.h
    M bolt/include/bolt/Core/HashUtilities.h
    M bolt/include/bolt/Core/MCPlusBuilder.h
    R bolt/include/bolt/Passes/BinaryFunctionCallGraph.h
    R bolt/include/bolt/Passes/CallGraph.h
    R bolt/include/bolt/Passes/CallGraphWalker.h
    M bolt/include/bolt/Passes/HFSort.h
    M bolt/include/bolt/Passes/RegReAssign.h
    M bolt/include/bolt/Passes/ReorderFunctions.h
    M bolt/include/bolt/Profile/ProfileYAMLMapping.h
    M bolt/include/bolt/Profile/YAMLProfileReader.h
    M bolt/include/bolt/Rewrite/DWARFRewriter.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/lib/CMakeLists.txt
    M bolt/lib/Core/BinaryBasicBlock.cpp
    M bolt/lib/Core/BinaryContext.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
    M bolt/lib/Core/DebugNames.cpp
    M bolt/lib/Core/Exceptions.cpp
    M bolt/lib/Core/GDBIndex.cpp
    M bolt/lib/Core/HashUtilities.cpp
    M bolt/lib/Passes/AsmDump.cpp
    R bolt/lib/Passes/BinaryFunctionCallGraph.cpp
    M bolt/lib/Passes/BinaryPasses.cpp
    M bolt/lib/Passes/CMakeLists.txt
    R bolt/lib/Passes/CallGraph.cpp
    R bolt/lib/Passes/CallGraphWalker.cpp
    M bolt/lib/Passes/FrameAnalysis.cpp
    M bolt/lib/Passes/FrameOptimizer.cpp
    M bolt/lib/Passes/IndirectCallPromotion.cpp
    M bolt/lib/Passes/Instrumentation.cpp
    M bolt/lib/Passes/JTFootprintReduction.cpp
    M bolt/lib/Passes/RegAnalysis.cpp
    M bolt/lib/Passes/RegReAssign.cpp
    M bolt/lib/Passes/StokeInfo.cpp
    M bolt/lib/Profile/BoltAddressTranslation.cpp
    M bolt/lib/Profile/CMakeLists.txt
    M bolt/lib/Profile/DataAggregator.cpp
    M bolt/lib/Profile/Heatmap.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/CMakeLists.txt
    M bolt/lib/Rewrite/DWARFRewriter.cpp
    M bolt/lib/Rewrite/LinuxKernelRewriter.cpp
    M bolt/lib/Rewrite/PseudoProbeRewriter.cpp
    M bolt/lib/Rewrite/RewriteInstance.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
    A bolt/test/AArch64/dummy-return.s
    A bolt/test/AArch64/test-indirect-branch.s
    M bolt/test/AArch64/update-debug-reloc.test
    M bolt/test/AArch64/veneer-gold.s
    A bolt/test/X86/Inputs/ambiguous_fragment.s
    A bolt/test/X86/Inputs/ambiguous_fragment.script
    M bolt/test/X86/Inputs/jump-table-fixed-ref-pic.s
    A bolt/test/X86/ambiguous_fragment.test
    M bolt/test/X86/debug-fission-single-convert.s
    M bolt/test/X86/debug-fission-single.s
    M bolt/test/X86/dwarf4-df-dualcu.test
    M bolt/test/X86/dwarf4-df-input-lowpc-ranges-cus.test
    M bolt/test/X86/dwarf4-df-input-lowpc-ranges.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-split-gdb-index-types-gdb-generated.test
    M bolt/test/X86/dwarf5-addr-section-reuse.s
    A bolt/test/X86/dwarf5-df-larger-batch-size.test
    M bolt/test/X86/dwarf5-df-types-debug-names.test
    M bolt/test/X86/dwarf5-df-types-modify-dwo-name-mixed.test
    M bolt/test/X86/dwarf5-df-types-modify-dwo-name.test
    M bolt/test/X86/dwarf5-dwarf4-types-backward-forward-cross-reference.test
    R bolt/test/X86/dwarf5-ftypes-dwo-mono-input-dwp-output.test
    M bolt/test/X86/dwarf5-locexpr-referrence.test
    M bolt/test/X86/dwarf5-one-loclists-two-bases.test
    M bolt/test/X86/dwarf5-two-loclists.test
    M bolt/test/X86/dwarf5-two-rnglists.test
    A bolt/test/X86/hashing-based-function-matching.test
    M bolt/test/X86/infer_no_exits.test
    M bolt/test/X86/issue20.s
    M bolt/test/X86/issue20.test
    M bolt/test/X86/jt-symbol-disambiguation-4.s
    M bolt/test/X86/jump-table-fixed-ref-pic.test
    M bolt/test/X86/linux-alt-instruction.s
    A bolt/test/X86/match-functions-with-call-graph.test
    A bolt/test/X86/match-functions-with-calls-as-anchors.test
    A bolt/test/X86/name-similarity-function-matching.test
    M bolt/test/X86/pseudoprobe-decoding-inline.test
    M bolt/test/X86/reader-stale-yaml-std.test
    M bolt/test/X86/register-fragments-bolt-symbols.s
    M bolt/test/X86/sctc-bug4.test
    A bolt/test/X86/three-way-split-jt.s
    M bolt/test/lit.cfg.py
    M bolt/test/lit.site.cfg.py.in
    M bolt/test/perf2bolt/lit.local.cfg
    A bolt/test/timers.c
    M bolt/utils/docker/Dockerfile
    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/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-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/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/ForwardDeclarationNamespaceCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/ImplicitWideningOfMultiplicationResultCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/ImplicitWideningOfMultiplicationResultCheck.h
    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/SizeofExpressionCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/UnusedReturnValueCheck.cpp
    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/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/ConstCorrectnessCheck.cpp
    M clang-tools-extra/clang-tidy/misc/ConstCorrectnessCheck.h
    M clang-tools-extra/clang-tidy/misc/UseInternalLinkageCheck.cpp
    M clang-tools-extra/clang-tidy/misc/UseInternalLinkageCheck.h
    M clang-tools-extra/clang-tidy/modernize/CMakeLists.txt
    M clang-tools-extra/clang-tidy/modernize/ModernizeTidyModule.cpp
    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/UseStdFormatCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/UseStdPrintCheck.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/NonConstParameterCheck.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/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
    M clang-tools-extra/clang-tidy/utils/CMakeLists.txt
    M clang-tools-extra/clang-tidy/utils/ExceptionAnalyzer.cpp
    M clang-tools-extra/clang-tidy/utils/ExprSequence.cpp
    A clang-tools-extra/clang-tidy/utils/UseRangesCheck.cpp
    A clang-tools-extra/clang-tidy/utils/UseRangesCheck.h
    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/Compiler.h
    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/IncludeCleaner.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
    A clang-tools-extra/clangd/ScanningProjectModules.cpp
    A clang-tools-extra/clangd/ScanningProjectModules.h
    M clang-tools-extra/clangd/index/remote/Client.h
    M clang-tools-extra/clangd/index/remote/server/Server.cpp
    M clang-tools-extra/clangd/support/ThreadsafeFS.cpp
    M clang-tools-extra/clangd/support/Trace.cpp
    M clang-tools-extra/clangd/test/CMakeLists.txt
    A clang-tools-extra/clangd/test/modules.test
    M clang-tools-extra/clangd/test/trace.test
    M clang-tools-extra/clangd/tool/Check.cpp
    M clang-tools-extra/clangd/tool/ClangdMain.cpp
    M clang-tools-extra/clangd/unittests/CMakeLists.txt
    M clang-tools-extra/clangd/unittests/IncludeCleanerTests.cpp
    A clang-tools-extra/clangd/unittests/PrerequisiteModulesTest.cpp
    M clang-tools-extra/clangd/unittests/TestFS.h
    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/implicit-widening-of-multiplication-result.rst
    A clang-tools-extra/docs/clang-tidy/checks/bugprone/pointer-arithmetic-on-polymorphic-object.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/unused-return-value.rst
    A clang-tools-extra/docs/clang-tidy/checks/cert/ctr56-cpp.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/unix.BlockInCriticalSection.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/pro-type-member-init.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/use-internal-linkage.rst
    A clang-tools-extra/docs/clang-tidy/checks/modernize/use-ranges.rst
    M clang-tools-extra/docs/clang-tidy/index.rst
    M clang-tools-extra/docs/modularize.rst
    M clang-tools-extra/include-cleaner/lib/Analysis.cpp
    M clang-tools-extra/include-cleaner/unittests/AnalysisTest.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
    M 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
    A clang-tools-extra/test/clang-doc/test-path-abs.cpp
    M clang-tools-extra/test/clang-tidy/check_clang_tidy.py
    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
    A clang-tools-extra/test/clang-tidy/checkers/bugprone/assignment-in-if-condition-cxx20.cpp
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/exception-escape.cpp
    A clang-tools-extra/test/clang-tidy/checkers/bugprone/implicit-widening-of-multiplication-result-constants.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
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/sizeof-expression-2.c
    M 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
    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/pro-type-member-init.cpp
    M clang-tools-extra/test/clang-tidy/checkers/llvmlibc/implementation-in-namespace.cpp
    M clang-tools-extra/test/clang-tidy/checkers/misc/const-correctness-values.cpp
    A clang-tools-extra/test/clang-tidy/checkers/misc/use-internal-linkage-fix-mode-none.cpp
    M clang-tools-extra/test/clang-tidy/checkers/misc/use-internal-linkage-func.cpp
    M 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
    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-std-format-custom.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/use-std-format-fmt.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/use-std-print-custom.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
    A clang-tools-extra/test/clang-tidy/checkers/readability/non-const-parameter.c
    M clang-tools-extra/test/clang-tidy/checkers/readability/simplify-boolean-expr.cpp
    A clang-tools-extra/test/clang-tidy/infrastructure/allow-no-checks.cpp
    M clang-tools-extra/unittests/clang-doc/HTMLGeneratorTest.cpp
    M clang/bindings/python/clang/cindex.py
    R clang/bindings/python/clang/enumerations.py
    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
    M clang/bindings/python/tests/cindex/test_enums.py
    M clang/bindings/python/tests/cindex/test_token_kind.py
    M clang/cmake/caches/Fuchsia-stage2.cmake
    M clang/cmake/caches/Fuchsia.cmake
    M clang/cmake/caches/Release.cmake
    M clang/cmake/modules/AddClang.cmake
    M clang/docs/ClangFormatStyleOptions.rst
    A clang/docs/ClangNVLinkWrapper.rst
    M clang/docs/CommandGuide/clang.rst
    M clang/docs/HIPSupport.rst
    M clang/docs/HLSL/AvailabilityDiagnostics.rst
    M clang/docs/HLSL/ExpectedDifferences.rst
    M clang/docs/HLSL/HLSLIRReference.rst
    M clang/docs/HLSL/ResourceTypes.rst
    M clang/docs/LanguageExtensions.rst
    M clang/docs/MSVCCompatibility.rst
    M clang/docs/MemorySanitizer.rst
    M clang/docs/ReleaseNotes.rst
    M clang/docs/StandardCPlusPlusModules.rst
    M clang/docs/ThreadSafetyAnalysis.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/index.rst
    M clang/docs/tools/clang-formatted-files.txt
    M clang/examples/LLVMPrintFunctionNames/LLVMPrintFunctionNames.cpp
    M clang/include/clang-c/Index.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/ASTNodeTraverser.h
    M clang/include/clang/AST/Decl.h
    M clang/include/clang/AST/DeclBase.h
    M clang/include/clang/AST/DeclCXX.h
    M clang/include/clang/AST/DeclOpenMP.h
    M clang/include/clang/AST/Expr.h
    M clang/include/clang/AST/ExprCXX.h
    M clang/include/clang/AST/GlobalDecl.h
    M clang/include/clang/AST/Mangle.h
    M clang/include/clang/AST/OpenMPClause.h
    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/StmtOpenMP.h
    M clang/include/clang/AST/TemplateName.h
    M clang/include/clang/AST/Type.h
    M clang/include/clang/AST/VTableBuilder.h
    M clang/include/clang/Analysis/FlowSensitive/ASTOps.h
    M clang/include/clang/Analysis/FlowSensitive/AdornedCFG.h
    M clang/include/clang/Analysis/FlowSensitive/DataflowAnalysis.h
    M clang/include/clang/Analysis/FlowSensitive/MapLattice.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/BuiltinsWebAssembly.def
    M clang/include/clang/Basic/BuiltinsX86.def
    M clang/include/clang/Basic/CodeGenOptions.def
    M clang/include/clang/Basic/Cuda.h
    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/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/LangOptions.def
    M clang/include/clang/Basic/LangStandard.h
    M clang/include/clang/Basic/LangStandards.def
    M clang/include/clang/Basic/OpenMPKinds.def
    M clang/include/clang/Basic/OpenMPKinds.h
    M clang/include/clang/Basic/PointerAuthOptions.h
    M clang/include/clang/Basic/StmtNodes.td
    M clang/include/clang/Basic/TargetCXXABI.h
    M clang/include/clang/Basic/TargetInfo.h
    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/arm_neon.td
    M clang/include/clang/Basic/arm_neon_incl.td
    M clang/include/clang/Basic/arm_sme.td
    M clang/include/clang/CodeGen/CodeGenABITypes.h
    M clang/include/clang/CodeGen/ConstantInitBuilder.h
    R clang/include/clang/CodeGen/ObjectFilePCHContainerOperations.h
    A clang/include/clang/CodeGen/ObjectFilePCHContainerWriter.h
    M clang/include/clang/Driver/Driver.h
    M clang/include/clang/Driver/Options.td
    M clang/include/clang/Driver/ToolChain.h
    A clang/include/clang/Driver/aarch64-mlr-for-calls-only.c
    M clang/include/clang/ExtractAPI/ExtractAPIVisitor.h
    M clang/include/clang/Format/Format.h
    M clang/include/clang/Frontend/FrontendOptions.h
    M clang/include/clang/Frontend/MultiplexConsumer.h
    M clang/include/clang/InstallAPI/Visitor.h
    M clang/include/clang/Lex/HeaderSearchOptions.h
    M clang/include/clang/Lex/PPEmbedParameters.h
    M clang/include/clang/Lex/Preprocessor.h
    M clang/include/clang/Lex/PreprocessorOptions.h
    M clang/include/clang/Parse/Parser.h
    M clang/include/clang/Sema/DeclSpec.h
    M clang/include/clang/Sema/HLSLExternalSemaSource.h
    M clang/include/clang/Sema/Overload.h
    M clang/include/clang/Sema/ParsedAttr.h
    M clang/include/clang/Sema/Sema.h
    M clang/include/clang/Sema/SemaConcept.h
    M clang/include/clang/Sema/SemaHLSL.h
    M clang/include/clang/Sema/SemaObjC.h
    M clang/include/clang/Sema/SemaOpenCL.h
    M clang/include/clang/Sema/SemaOpenMP.h
    M clang/include/clang/Sema/Template.h
    M clang/include/clang/Serialization/ASTBitCodes.h
    M clang/include/clang/Serialization/ASTReader.h
    M clang/include/clang/Serialization/ASTWriter.h
    A clang/include/clang/Serialization/ObjectFilePCHContainerReader.h
    M clang/include/clang/StaticAnalyzer/Checkers/Checkers.td
    M clang/include/clang/StaticAnalyzer/Core/AnalyzerOptions.def
    M clang/include/clang/StaticAnalyzer/Core/BugReporter/BugReporterVisitors.h
    A clang/include/clang/StaticAnalyzer/Core/BugReporter/Z3CrosscheckVisitor.h
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/MemRegion.h
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/SMTConstraintManager.h
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/SVals.h
    M clang/include/clang/Support/RISCVVIntrinsicUtils.h
    M clang/include/clang/Tooling/Transformer/RangeSelector.h
    M clang/include/module.modulemap
    M clang/lib/APINotes/APINotesFormat.h
    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/AST/ASTConcept.cpp
    M clang/lib/AST/ASTContext.cpp
    M clang/lib/AST/ASTDumper.cpp
    M clang/lib/AST/ASTImporter.cpp
    M clang/lib/AST/CMakeLists.txt
    M clang/lib/AST/Decl.cpp
    M clang/lib/AST/DeclBase.cpp
    M clang/lib/AST/DeclCXX.cpp
    M clang/lib/AST/DeclPrinter.cpp
    M clang/lib/AST/DeclTemplate.cpp
    M clang/lib/AST/Expr.cpp
    M clang/lib/AST/ExprCXX.cpp
    M clang/lib/AST/ExprClassification.cpp
    M clang/lib/AST/ExprConstant.cpp
    M clang/lib/AST/Interp/Boolean.h
    M clang/lib/AST/Interp/ByteCodeEmitter.cpp
    M 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/ByteCodeStmtGen.cpp
    R clang/lib/AST/Interp/ByteCodeStmtGen.h
    A clang/lib/AST/Interp/Compiler.cpp
    A clang/lib/AST/Interp/Compiler.h
    M clang/lib/AST/Interp/Context.cpp
    M clang/lib/AST/Interp/Context.h
    M clang/lib/AST/Interp/Descriptor.cpp
    M clang/lib/AST/Interp/Descriptor.h
    M clang/lib/AST/Interp/Disasm.cpp
    A clang/lib/AST/Interp/DynamicAllocator.cpp
    A clang/lib/AST/Interp/DynamicAllocator.h
    M clang/lib/AST/Interp/EvalEmitter.cpp
    M clang/lib/AST/Interp/EvalEmitter.h
    M clang/lib/AST/Interp/EvaluationResult.cpp
    M clang/lib/AST/Interp/EvaluationResult.h
    M clang/lib/AST/Interp/Floating.h
    M clang/lib/AST/Interp/FunctionPointer.h
    M clang/lib/AST/Interp/Integral.h
    M clang/lib/AST/Interp/IntegralAP.h
    M clang/lib/AST/Interp/Interp.cpp
    M clang/lib/AST/Interp/Interp.h
    M clang/lib/AST/Interp/InterpBlock.cpp
    M clang/lib/AST/Interp/InterpBlock.h
    M clang/lib/AST/Interp/InterpBuiltin.cpp
    M clang/lib/AST/Interp/InterpFrame.cpp
    M clang/lib/AST/Interp/InterpFrame.h
    M clang/lib/AST/Interp/InterpState.cpp
    M clang/lib/AST/Interp/InterpState.h
    M clang/lib/AST/Interp/MemberPointer.cpp
    M clang/lib/AST/Interp/MemberPointer.h
    M clang/lib/AST/Interp/Opcodes.td
    M clang/lib/AST/Interp/Pointer.cpp
    M clang/lib/AST/Interp/Pointer.h
    M clang/lib/AST/Interp/Program.cpp
    M clang/lib/AST/Interp/Program.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/StmtOpenMP.cpp
    M clang/lib/AST/StmtPrinter.cpp
    M clang/lib/AST/StmtProfile.cpp
    M clang/lib/AST/TextNodeDumper.cpp
    M clang/lib/AST/Type.cpp
    M clang/lib/AST/TypePrinter.cpp
    M clang/lib/AST/VTableBuilder.cpp
    M clang/lib/ASTMatchers/ASTMatchersInternal.cpp
    M clang/lib/Analysis/Consumed.cpp
    M clang/lib/Analysis/ExprMutationAnalyzer.cpp
    M clang/lib/Analysis/FlowSensitive/AdornedCFG.cpp
    M clang/lib/Analysis/FlowSensitive/DataflowEnvironment.cpp
    M clang/lib/Analysis/FlowSensitive/Transfer.cpp
    M clang/lib/Analysis/FlowSensitive/TypeErasedDataflowAnalysis.cpp
    M clang/lib/Analysis/LiveVariables.cpp
    M clang/lib/Analysis/ThreadSafety.cpp
    M clang/lib/Analysis/ThreadSafetyCommon.cpp
    M clang/lib/Basic/Attributes.cpp
    M clang/lib/Basic/Builtins.cpp
    M clang/lib/Basic/Cuda.cpp
    M clang/lib/Basic/LangOptions.cpp
    M clang/lib/Basic/OpenMPKinds.cpp
    M clang/lib/Basic/Sarif.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/Hexagon.cpp
    M clang/lib/Basic/Targets/Hexagon.h
    M clang/lib/Basic/Targets/LoongArch.cpp
    M clang/lib/Basic/Targets/LoongArch.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/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/X86.cpp
    M clang/lib/Basic/Targets/X86.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/CGBuilder.h
    M clang/lib/CodeGen/CGBuiltin.cpp
    M clang/lib/CodeGen/CGCXX.cpp
    M clang/lib/CodeGen/CGCXXABI.h
    M clang/lib/CodeGen/CGCall.cpp
    M clang/lib/CodeGen/CGClass.cpp
    M clang/lib/CodeGen/CGCoroutine.cpp
    M clang/lib/CodeGen/CGDebugInfo.cpp
    M clang/lib/CodeGen/CGDecl.cpp
    M clang/lib/CodeGen/CGDeclCXX.cpp
    M clang/lib/CodeGen/CGExpr.cpp
    M clang/lib/CodeGen/CGExprAgg.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/CGObjC.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
    M clang/lib/CodeGen/CGPointerAuth.cpp
    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/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/CodeGenTBAA.cpp
    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/MicrosoftCXXABI.cpp
    M clang/lib/CodeGen/ModuleBuilder.cpp
    R clang/lib/CodeGen/ObjectFilePCHContainerOperations.cpp
    A clang/lib/CodeGen/ObjectFilePCHContainerWriter.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/ARM.cpp
    M clang/lib/CodeGen/Targets/NVPTX.cpp
    M clang/lib/CodeGen/Targets/RISCV.cpp
    M clang/lib/CodeGen/Targets/SystemZ.cpp
    M clang/lib/CodeGen/Targets/X86.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/AMDGPU.cpp
    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/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/X86.cpp
    M clang/lib/Driver/ToolChains/BareMetal.cpp
    M clang/lib/Driver/ToolChains/Clang.cpp
    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/Flang.cpp
    M clang/lib/Driver/ToolChains/Gnu.cpp
    M clang/lib/Driver/ToolChains/HLSL.h
    M clang/lib/Driver/ToolChains/Hexagon.cpp
    M clang/lib/Driver/ToolChains/Linux.cpp
    M clang/lib/Driver/ToolChains/MinGW.cpp
    M clang/lib/Driver/ToolChains/PS4CPU.cpp
    M clang/lib/Driver/ToolChains/PS4CPU.h
    M clang/lib/Driver/ToolChains/Solaris.cpp
    M clang/lib/Driver/ToolChains/WebAssembly.cpp
    M clang/lib/ExtractAPI/DeclarationFragments.cpp
    M clang/lib/Format/ContinuationIndenter.cpp
    M clang/lib/Format/Format.cpp
    M clang/lib/Format/FormatToken.h
    M clang/lib/Format/TokenAnnotator.cpp
    M clang/lib/Format/UnwrappedLineFormatter.cpp
    M clang/lib/Format/UnwrappedLineParser.cpp
    M clang/lib/Format/WhitespaceManager.cpp
    M clang/lib/Frontend/CompilerInvocation.cpp
    M clang/lib/Frontend/FrontendActions.cpp
    M clang/lib/Frontend/InitPreprocessor.cpp
    M clang/lib/Frontend/MultiplexConsumer.cpp
    M clang/lib/Frontend/PrintPreprocessedOutput.cpp
    M clang/lib/Frontend/Rewrite/RewriteModernObjC.cpp
    M clang/lib/Headers/arm_acle.h
    M clang/lib/Headers/avx512fp16intrin.h
    M clang/lib/Headers/cpuid.h
    M clang/lib/Headers/emmintrin.h
    M clang/lib/Headers/float.h
    M clang/lib/Headers/hlsl/hlsl_intrinsics.h
    M clang/lib/Headers/intrin.h
    M clang/lib/Headers/mm3dnow.h
    M clang/lib/Headers/mmintrin.h
    M clang/lib/Headers/prfchwintrin.h
    M clang/lib/Headers/ptrauth.h
    M clang/lib/Headers/stdarg.h
    M clang/lib/Headers/stdatomic.h
    M clang/lib/Headers/stddef.h
    M clang/lib/Headers/tmmintrin.h
    M clang/lib/Headers/x86intrin.h
    M clang/lib/Headers/xmmintrin.h
    M clang/lib/Index/USRGeneration.cpp
    M clang/lib/InstallAPI/DiagnosticBuilderWrappers.cpp
    M clang/lib/InstallAPI/DirectoryScanner.cpp
    M clang/lib/InstallAPI/DylibVerifier.cpp
    M 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/Interpreter.cpp
    M clang/lib/Interpreter/InterpreterUtils.h
    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/PPCaching.cpp
    M clang/lib/Lex/PPDirectives.cpp
    M clang/lib/Lex/PPMacroExpansion.cpp
    M clang/lib/Lex/Preprocessor.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/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/Sema/CMakeLists.txt
    A clang/lib/Sema/CheckExprLifetime.cpp
    A clang/lib/Sema/CheckExprLifetime.h
    M clang/lib/Sema/DeclSpec.cpp
    M clang/lib/Sema/HLSLExternalSemaSource.cpp
    M clang/lib/Sema/ParsedAttr.cpp
    M clang/lib/Sema/ScopeInfo.cpp
    M clang/lib/Sema/Sema.cpp
    M clang/lib/Sema/SemaAPINotes.cpp
    M clang/lib/Sema/SemaARM.cpp
    M clang/lib/Sema/SemaAccess.cpp
    M clang/lib/Sema/SemaAttr.cpp
    M clang/lib/Sema/SemaAvailability.cpp
    A clang/lib/Sema/SemaBoundsSafety.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/SemaDecl.cpp
    M clang/lib/Sema/SemaDeclAttr.cpp
    M clang/lib/Sema/SemaDeclCXX.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
    M clang/lib/Sema/SemaInit.cpp
    M clang/lib/Sema/SemaLambda.cpp
    M clang/lib/Sema/SemaLookup.cpp
    M clang/lib/Sema/SemaModule.cpp
    M clang/lib/Sema/SemaObjC.cpp
    M clang/lib/Sema/SemaOpenCL.cpp
    M clang/lib/Sema/SemaOpenMP.cpp
    M clang/lib/Sema/SemaOverload.cpp
    M clang/lib/Sema/SemaPPC.cpp
    M clang/lib/Sema/SemaRISCV.cpp
    M clang/lib/Sema/SemaStmt.cpp
    M clang/lib/Sema/SemaStmtAttr.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
    M clang/lib/Sema/SemaX86.cpp
    M clang/lib/Sema/TreeTransform.h
    M clang/lib/Serialization/ASTReader.cpp
    M clang/lib/Serialization/ASTReaderDecl.cpp
    M clang/lib/Serialization/ASTReaderStmt.cpp
    M clang/lib/Serialization/ASTWriter.cpp
    M clang/lib/Serialization/ASTWriterDecl.cpp
    M clang/lib/Serialization/ASTWriterStmt.cpp
    M clang/lib/Serialization/CMakeLists.txt
    A clang/lib/Serialization/ObjectFilePCHContainerReader.cpp
    M clang/lib/StaticAnalyzer/Checkers/ArrayBoundCheckerV2.cpp
    M clang/lib/StaticAnalyzer/Checkers/BuiltinFunctionChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/CStringChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/CheckObjCDealloc.cpp
    M clang/lib/StaticAnalyzer/Checkers/GenericTaintChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/MallocChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/MmapWriteExecChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/PointerSubChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/RetainCountChecker/RetainCountDiagnostics.cpp
    M clang/lib/StaticAnalyzer/Checkers/StdLibraryFunctionsChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/StreamChecker.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/CallEvent.cpp
    M clang/lib/StaticAnalyzer/Core/ExprEngine.cpp
    M clang/lib/StaticAnalyzer/Core/MemRegion.cpp
    M clang/lib/StaticAnalyzer/Core/RangeConstraintManager.cpp
    M clang/lib/StaticAnalyzer/Core/SVals.cpp
    A clang/lib/StaticAnalyzer/Core/Z3CrosscheckVisitor.cpp
    M clang/lib/Support/RISCVVIntrinsicUtils.cpp
    M clang/lib/Tooling/ArgumentsAdjusters.cpp
    M clang/lib/Tooling/DependencyScanning/CMakeLists.txt
    M clang/lib/Tooling/DependencyScanning/DependencyScanningWorker.cpp
    M clang/lib/Tooling/Transformer/RangeSelector.cpp
    M clang/lib/Tooling/Transformer/Stencil.cpp
    A clang/test/APINotes/Inputs/Headers/Methods.apinotes
    A clang/test/APINotes/Inputs/Headers/Methods.h
    M clang/test/APINotes/Inputs/Headers/Namespaces.apinotes
    M clang/test/APINotes/Inputs/Headers/Namespaces.h
    M clang/test/APINotes/Inputs/Headers/module.modulemap
    A clang/test/APINotes/methods.cpp
    M clang/test/APINotes/namespaces.cpp
    M clang/test/AST/HLSL/RWBuffer-AST.hlsl
    R clang/test/AST/HLSL/ResourceStruct.hlsl
    A clang/test/AST/HLSL/export.hlsl
    M clang/test/AST/Interp/arrays.cpp
    M clang/test/AST/Interp/atomic.c
    A clang/test/AST/Interp/builtin-constant-p.cpp
    M clang/test/AST/Interp/builtins.cpp
    M clang/test/AST/Interp/c.c
    M clang/test/AST/Interp/c23.c
    A clang/test/AST/Interp/codegen.cpp
    A clang/test/AST/Interp/const-temporaries.cpp
    M clang/test/AST/Interp/constexpr-subobj-initialization.cpp
    M clang/test/AST/Interp/cxx11.cpp
    M clang/test/AST/Interp/cxx20.cpp
    M clang/test/AST/Interp/cxx23.cpp
    A clang/test/AST/Interp/cxx2a.cpp
    M clang/test/AST/Interp/functions.cpp
    M clang/test/AST/Interp/lambda.cpp
    M clang/test/AST/Interp/lifetimes.cpp
    M clang/test/AST/Interp/literals.cpp
    M clang/test/AST/Interp/memberpointers.cpp
    A clang/test/AST/Interp/mutable.cpp
    A clang/test/AST/Interp/new-delete.cpp
    M clang/test/AST/Interp/records.cpp
    M clang/test/AST/Interp/references.cpp
    M clang/test/AST/Interp/shifts.cpp
    M clang/test/AST/ast-dump-ctad-alias.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-ptrauth-json.cpp
    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
    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
    A clang/test/AST/explicit-base-class-move-cntr.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/Malloc+MismatchedDeallocator+NewDelete.cpp
    M clang/test/Analysis/MismatchedDeallocator-checker-test.mm
    M clang/test/Analysis/NewDelete-intersections.mm
    M clang/test/Analysis/analyzer-checker-option-help.c
    M clang/test/Analysis/analyzer-config.c
    M clang/test/Analysis/bstring_UninitRead.c
    M clang/test/Analysis/builtin-functions.cpp
    M clang/test/Analysis/call-invalidation.cpp
    M clang/test/Analysis/ctor-array.cpp
    M clang/test/Analysis/ctor.mm
    M clang/test/Analysis/diagnostics/explicit-suppression.cpp
    M clang/test/Analysis/free.c
    M clang/test/Analysis/free.cpp
    M clang/test/Analysis/getline-alloc.c
    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/malloc-fnptr-plist.c
    M clang/test/Analysis/malloc-std-namespace.cpp
    M clang/test/Analysis/malloc.c
    M clang/test/Analysis/malloc.mm
    M clang/test/Analysis/mmap-writeexec.c
    M clang/test/Analysis/out-of-bounds-diagnostics.c
    M clang/test/Analysis/plist-macros.cpp
    M clang/test/Analysis/pointer-sub.c
    A clang/test/Analysis/short-circuiting-eval.cpp
    M clang/test/Analysis/stream.c
    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/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/Inputs/bits.bin
    R clang/test/C/C2x/Inputs/boop.h
    R clang/test/C/C2x/Inputs/i.dat
    R clang/test/C/C2x/Inputs/jump.wav
    R clang/test/C/C2x/Inputs/s.dat
    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/n2819.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/n3017.c
    R clang/test/C/C2x/n3018.c
    R clang/test/C/C2x/n3033.c
    R clang/test/C/C2x/n3033_2.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
    M clang/test/C/C99/n809.c
    M clang/test/C/drs/dr0xx.c
    M clang/test/C/drs/dr2xx.c
    M clang/test/CMakeLists.txt
    A clang/test/CXX/basic/basic.lookup/basic.lookup.qual/basic.lookup.qual.general/p2.cpp
    M clang/test/CXX/basic/basic.types/p10.cpp
    M clang/test/CXX/class/class.compare/class.compare.default/p1.cpp
    M clang/test/CXX/dcl.dcl/dcl.spec/dcl.stc/p1.cpp
    A clang/test/CXX/dcl.dcl/dcl.spec/dcl.type/dcl.spec.auto/p5-cxx14.cpp
    A clang/test/CXX/dcl.decl/dcl.meaning/dcl.mptr/p2.cpp
    M clang/test/CXX/drs/cwg18xx.cpp
    M clang/test/CXX/drs/cwg20xx.cpp
    M clang/test/CXX/drs/cwg24xx.cpp
    M clang/test/CXX/drs/cwg25xx.cpp
    M clang/test/CXX/drs/cwg26xx.cpp
    M clang/test/CXX/drs/cwg28xx.cpp
    M clang/test/CXX/drs/cwg5xx.cpp
    M clang/test/CXX/drs/cwg6xx.cpp
    M clang/test/CXX/drs/cwg8xx.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.unary/expr.unary.op/p4.cpp
    M clang/test/CXX/module/module.import/p6.cpp
    M clang/test/CXX/over/over.match/over.match.funcs/over.match.class.deduct/p2.cpp
    M clang/test/CXX/temp/temp.arg/temp.arg.template/p3-0x.cpp
    M clang/test/CXX/temp/temp.fct.spec/temp.deduct/temp.deduct.call/p3-0x.cpp
    M clang/test/CXX/temp/temp.res/p3.cpp
    M clang/test/CXX/temp/temp.res/temp.dep/temp.dep.type/p4.cpp
    M clang/test/CXX/temp/temp.spec/temp.expl.spec/p2-20.cpp
    M clang/test/CodeGen/2009-06-14-anonymous-union-init.c
    A clang/test/CodeGen/AMDGPU/amdgpu-atomic-float.c
    A clang/test/CodeGen/LoongArch/align.c
    A clang/test/CodeGen/PowerPC/musttail-forward-declaration-inline.c
    A clang/test/CodeGen/PowerPC/musttail-forward-declaration-weak.c
    A clang/test/CodeGen/PowerPC/musttail-forward-declaration.c
    A clang/test/CodeGen/PowerPC/musttail-indirect.cpp
    A clang/test/CodeGen/PowerPC/musttail-inline.c
    A clang/test/CodeGen/PowerPC/musttail-undefined.c
    A clang/test/CodeGen/PowerPC/musttail-weak.c
    A clang/test/CodeGen/PowerPC/musttail.c
    A clang/test/CodeGen/PowerPC/save-reg-params.c
    M clang/test/CodeGen/RISCV/abi-empty-structs.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/bfloat16/vcreate.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/bfloat16/vget.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/bfloat16/vle16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/bfloat16/vle16ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/bfloat16/vlmul_ext_v.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/bfloat16/vlmul_trunc_v.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/bfloat16/vloxei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/bfloat16/vloxseg2ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/bfloat16/vloxseg3ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/bfloat16/vloxseg4ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/bfloat16/vloxseg5ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/bfloat16/vloxseg6ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/bfloat16/vloxseg7ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/bfloat16/vloxseg8ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/bfloat16/vlse16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/bfloat16/vlseg2e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/bfloat16/vlseg2e16ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/bfloat16/vlseg3e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/bfloat16/vlseg3e16ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/bfloat16/vlseg4e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/bfloat16/vlseg4e16ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/bfloat16/vlseg5e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/bfloat16/vlseg5e16ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/bfloat16/vlseg6e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/bfloat16/vlseg6e16ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/bfloat16/vlseg7e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/bfloat16/vlseg7e16ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/bfloat16/vlseg8e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/bfloat16/vlseg8e16ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/bfloat16/vlsseg2e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/bfloat16/vlsseg3e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/bfloat16/vlsseg4e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/bfloat16/vlsseg5e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/bfloat16/vlsseg6e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/bfloat16/vlsseg7e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/bfloat16/vlsseg8e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/bfloat16/vluxei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/bfloat16/vluxseg2ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/bfloat16/vluxseg3ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/bfloat16/vluxseg4ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/bfloat16/vluxseg5ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/bfloat16/vluxseg6ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/bfloat16/vluxseg7ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/bfloat16/vluxseg8ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/bfloat16/vreinterpret.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/bfloat16/vse16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/bfloat16/vset.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/bfloat16/vsoxei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/bfloat16/vsoxseg2ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/bfloat16/vsoxseg3ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/bfloat16/vsoxseg4ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/bfloat16/vsoxseg5ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/bfloat16/vsoxseg6ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/bfloat16/vsoxseg7ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/bfloat16/vsoxseg8ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/bfloat16/vsse16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/bfloat16/vsseg2e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/bfloat16/vsseg3e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/bfloat16/vsseg4e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/bfloat16/vsseg5e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/bfloat16/vsseg6e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/bfloat16/vsseg7e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/bfloat16/vsseg8e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/bfloat16/vssseg2e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/bfloat16/vssseg3e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/bfloat16/vssseg4e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/bfloat16/vssseg5e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/bfloat16/vssseg6e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/bfloat16/vssseg7e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/bfloat16/vssseg8e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/bfloat16/vsuxei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/bfloat16/vsuxseg2ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/bfloat16/vsuxseg3ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/bfloat16/vsuxseg4ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/bfloat16/vsuxseg5ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/bfloat16/vsuxseg6ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/bfloat16/vsuxseg7ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/bfloat16/vsuxseg8ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/bfloat16/vundefined.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/sf_vfwmacc_4x4x4.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vfncvt.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vfncvt_f_f.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vfncvtbf16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vfwcvt.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vfwcvt_f_f.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vfwcvtbf16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vfwmaccbf16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vle16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vle16ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vloxei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vloxei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vloxei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vloxei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vloxseg2ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vloxseg2ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vloxseg2ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vloxseg2ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vloxseg3ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vloxseg3ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vloxseg3ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vloxseg3ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vloxseg4ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vloxseg4ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vloxseg4ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vloxseg4ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vloxseg5ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vloxseg5ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vloxseg5ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vloxseg5ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vloxseg6ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vloxseg6ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vloxseg6ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vloxseg6ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vloxseg7ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vloxseg7ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vloxseg7ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vloxseg7ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vloxseg8ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vloxseg8ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vloxseg8ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vloxseg8ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vlse16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vlseg2e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vlseg2e16ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vlseg2e32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vlseg2e32ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vlseg2e64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vlseg2e64ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vlseg3e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vlseg3e16ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vlseg4e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vlseg4e16ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vlseg4e32ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vlseg5e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vlseg5e16ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vlseg6e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vlseg6e16ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vlseg7e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vlseg7e16ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vlseg8e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vlseg8e16ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vlsseg2e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vlsseg3e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vlsseg4e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vlsseg5e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vlsseg6e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vlsseg7e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vlsseg8e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vluxei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vluxei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vluxei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vluxei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vluxseg2ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vluxseg2ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vluxseg2ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vluxseg2ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vluxseg3ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vluxseg3ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vluxseg3ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vluxseg3ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vluxseg4ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vluxseg4ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vluxseg4ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vluxseg4ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vluxseg5ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vluxseg5ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vluxseg5ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vluxseg5ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vluxseg6ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vluxseg6ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vluxseg6ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vluxseg6ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vluxseg7ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vluxseg7ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vluxseg7ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vluxseg7ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vluxseg8ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vluxseg8ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vluxseg8ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vluxseg8ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vmerge.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vmv.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vreinterpret.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vse16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsoxei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsoxei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsoxei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsoxei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsoxseg2ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsoxseg2ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsoxseg2ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsoxseg2ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsoxseg3ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsoxseg3ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsoxseg3ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsoxseg3ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsoxseg4ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsoxseg4ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsoxseg4ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsoxseg4ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsoxseg5ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsoxseg5ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsoxseg5ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsoxseg5ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsoxseg6ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsoxseg6ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsoxseg6ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsoxseg6ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsoxseg7ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsoxseg7ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsoxseg7ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsoxseg7ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsoxseg8ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsoxseg8ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsoxseg8ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsoxseg8ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsse16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsseg2e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsseg3e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsseg4e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsseg5e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsseg6e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsseg7e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsseg8e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vssseg2e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vssseg3e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vssseg4e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vssseg5e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vssseg6e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vssseg7e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vssseg8e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsuxei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsuxei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsuxei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsuxei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsuxseg2ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsuxseg2ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsuxseg2ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsuxseg2ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsuxseg3ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsuxseg3ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsuxseg3ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsuxseg3ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsuxseg4ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsuxseg4ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsuxseg4ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsuxseg4ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsuxseg5ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsuxseg5ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsuxseg5ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsuxseg5ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsuxseg6ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsuxseg6ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsuxseg6ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsuxseg6ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsuxseg7ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsuxseg7ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsuxseg7ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsuxseg7ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsuxseg8ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsuxseg8ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsuxseg8ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsuxseg8ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/bfloat16/vget.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/bfloat16/vle16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/bfloat16/vle16ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/bfloat16/vlmul_ext_v.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/bfloat16/vlmul_trunc_v.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/bfloat16/vloxei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/bfloat16/vloxseg2ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/bfloat16/vloxseg3ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/bfloat16/vloxseg4ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/bfloat16/vloxseg5ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/bfloat16/vloxseg6ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/bfloat16/vloxseg7ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/bfloat16/vloxseg8ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/bfloat16/vlse16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/bfloat16/vlseg2e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/bfloat16/vlseg2e16ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/bfloat16/vlseg3e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/bfloat16/vlseg3e16ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/bfloat16/vlseg4e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/bfloat16/vlseg4e16ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/bfloat16/vlseg5e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/bfloat16/vlseg5e16ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/bfloat16/vlseg6e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/bfloat16/vlseg6e16ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/bfloat16/vlseg7e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/bfloat16/vlseg7e16ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/bfloat16/vlseg8e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/bfloat16/vlseg8e16ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/bfloat16/vlsseg2e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/bfloat16/vlsseg3e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/bfloat16/vlsseg4e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/bfloat16/vlsseg5e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/bfloat16/vlsseg6e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/bfloat16/vlsseg7e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/bfloat16/vlsseg8e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/bfloat16/vluxei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/bfloat16/vluxseg2ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/bfloat16/vluxseg3ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/bfloat16/vluxseg4ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/bfloat16/vluxseg5ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/bfloat16/vluxseg6ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/bfloat16/vluxseg7ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/bfloat16/vluxseg8ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/bfloat16/vreinterpret.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/bfloat16/vse16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/bfloat16/vset.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/bfloat16/vsoxei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/bfloat16/vsoxseg2ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/bfloat16/vsoxseg3ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/bfloat16/vsoxseg4ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/bfloat16/vsoxseg5ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/bfloat16/vsoxseg6ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/bfloat16/vsoxseg7ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/bfloat16/vsoxseg8ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/bfloat16/vsse16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/bfloat16/vsseg2e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/bfloat16/vsseg3e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/bfloat16/vsseg4e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/bfloat16/vsseg5e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/bfloat16/vsseg6e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/bfloat16/vsseg7e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/bfloat16/vsseg8e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/bfloat16/vssseg2e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/bfloat16/vssseg3e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/bfloat16/vssseg4e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/bfloat16/vssseg5e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/bfloat16/vssseg6e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/bfloat16/vssseg7e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/bfloat16/vssseg8e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/bfloat16/vsuxei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/bfloat16/vsuxseg2ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/bfloat16/vsuxseg3ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/bfloat16/vsuxseg4ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/bfloat16/vsuxseg5ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/bfloat16/vsuxseg6ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/bfloat16/vsuxseg7ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/bfloat16/vsuxseg8ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/sf_vfwmacc_4x4x4.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vfncvt.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vfncvt_f_f.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vfncvtbf16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vfwcvt.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vfwcvt_f_f.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vfwcvtbf16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vfwmaccbf16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vle16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vle16ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vloxei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vloxei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vloxei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vloxei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vloxseg2ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vloxseg2ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vloxseg2ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vloxseg2ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vloxseg3ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vloxseg3ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vloxseg3ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vloxseg3ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vloxseg4ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vloxseg4ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vloxseg4ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vloxseg4ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vloxseg5ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vloxseg5ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vloxseg5ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vloxseg5ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vloxseg6ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vloxseg6ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vloxseg6ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vloxseg6ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vloxseg7ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vloxseg7ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vloxseg7ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vloxseg7ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vloxseg8ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vloxseg8ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vloxseg8ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vloxseg8ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vlse16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vlseg2e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vlseg2e16ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vlseg3e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vlseg3e16ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vlseg4e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vlseg4e16ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vlseg5e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vlseg5e16ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vlseg6e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vlseg6e16ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vlseg7e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vlseg7e16ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vlseg8e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vlseg8e16ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vlsseg2e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vlsseg3e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vlsseg4e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vlsseg5e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vlsseg6e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vlsseg7e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vlsseg8e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vluxei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vluxei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vluxei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vluxei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vluxseg2ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vluxseg2ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vluxseg2ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vluxseg2ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vluxseg3ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vluxseg3ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vluxseg3ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vluxseg3ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vluxseg4ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vluxseg4ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vluxseg4ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vluxseg4ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vluxseg5ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vluxseg5ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vluxseg5ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vluxseg5ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vluxseg6ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vluxseg6ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vluxseg6ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vluxseg6ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vluxseg7ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vluxseg7ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vluxseg7ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vluxseg7ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vluxseg8ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vluxseg8ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vluxseg8ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vluxseg8ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vmerge.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vmv.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vreinterpret.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vse16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsoxei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsoxei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsoxei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsoxei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsoxseg2ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsoxseg2ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsoxseg2ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsoxseg2ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsoxseg3ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsoxseg3ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsoxseg3ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsoxseg3ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsoxseg4ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsoxseg4ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsoxseg4ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsoxseg4ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsoxseg5ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsoxseg5ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsoxseg5ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsoxseg5ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsoxseg6ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsoxseg6ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsoxseg6ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsoxseg6ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsoxseg7ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsoxseg7ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsoxseg7ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsoxseg7ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsoxseg8ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsoxseg8ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsoxseg8ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsoxseg8ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsse16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsseg2e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsseg3e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsseg4e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsseg5e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsseg6e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsseg7e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsseg8e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vssseg2e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vssseg3e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vssseg4e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vssseg5e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vssseg6e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vssseg7e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vssseg8e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsuxei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsuxei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsuxei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsuxei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsuxseg2ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsuxseg2ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsuxseg2ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsuxseg2ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsuxseg3ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsuxseg3ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsuxseg3ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsuxseg3ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsuxseg4ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsuxseg4ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsuxseg4ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsuxseg4ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsuxseg5ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsuxseg5ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsuxseg5ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsuxseg5ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsuxseg6ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsuxseg6ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsuxseg6ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsuxseg6ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsuxseg7ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsuxseg7ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsuxseg7ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsuxseg7ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsuxseg8ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsuxseg8ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsuxseg8ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsuxseg8ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/bfloat16/vle16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/bfloat16/vle16ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/bfloat16/vloxei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/bfloat16/vloxseg2ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/bfloat16/vloxseg3ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/bfloat16/vloxseg4ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/bfloat16/vloxseg5ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/bfloat16/vloxseg6ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/bfloat16/vloxseg7ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/bfloat16/vloxseg8ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/bfloat16/vlse16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/bfloat16/vlseg2e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/bfloat16/vlseg2e16ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/bfloat16/vlseg3e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/bfloat16/vlseg3e16ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/bfloat16/vlseg4e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/bfloat16/vlseg4e16ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/bfloat16/vlseg5e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/bfloat16/vlseg5e16ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/bfloat16/vlseg6e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/bfloat16/vlseg6e16ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/bfloat16/vlseg7e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/bfloat16/vlseg7e16ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/bfloat16/vlseg8e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/bfloat16/vlseg8e16ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/bfloat16/vlsseg2e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/bfloat16/vlsseg3e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/bfloat16/vlsseg4e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/bfloat16/vlsseg5e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/bfloat16/vlsseg6e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/bfloat16/vlsseg7e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/bfloat16/vlsseg8e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/bfloat16/vluxei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/bfloat16/vluxseg2ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/bfloat16/vluxseg3ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/bfloat16/vluxseg4ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/bfloat16/vluxseg5ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/bfloat16/vluxseg6ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/bfloat16/vluxseg7ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/bfloat16/vluxseg8ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/sf_vfwmacc_4x4x4.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vfncvt.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vfncvt_f_f.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vfncvtbf16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vfwcvt.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vfwcvt_f_f.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vfwcvtbf16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vfwmaccbf16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vle16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vle16ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vloxei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vloxei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vloxei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vloxei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vloxseg2ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vloxseg2ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vloxseg2ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vloxseg2ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vloxseg3ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vloxseg3ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vloxseg3ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vloxseg3ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vloxseg4ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vloxseg4ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vloxseg4ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vloxseg4ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vloxseg5ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vloxseg5ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vloxseg5ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vloxseg5ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vloxseg6ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vloxseg6ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vloxseg6ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vloxseg6ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vloxseg7ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vloxseg7ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vloxseg7ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vloxseg7ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vloxseg8ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vloxseg8ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vloxseg8ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vloxseg8ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlse16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlseg2e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlseg2e16ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlseg3e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlseg3e16ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlseg4e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlseg4e16ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlseg5e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlseg5e16ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlseg6e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlseg6e16ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlseg7e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlseg7e16ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlseg8e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlseg8e16ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlsseg2e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlsseg3e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlsseg4e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlsseg5e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlsseg6e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlsseg7e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vlsseg8e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vluxei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vluxei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vluxei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vluxei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vluxseg2ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vluxseg2ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vluxseg2ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vluxseg2ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vluxseg3ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vluxseg3ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vluxseg3ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vluxseg3ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vluxseg4ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vluxseg4ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vluxseg4ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vluxseg4ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vluxseg5ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vluxseg5ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vluxseg5ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vluxseg5ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vluxseg6ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vluxseg6ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vluxseg6ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vluxseg6ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vluxseg7ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vluxseg7ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vluxseg7ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vluxseg7ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vluxseg8ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vluxseg8ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vluxseg8ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vluxseg8ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vmerge.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vmv.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/bfloat16/vle16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/bfloat16/vle16ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/bfloat16/vloxei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/bfloat16/vloxseg2ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/bfloat16/vloxseg3ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/bfloat16/vloxseg4ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/bfloat16/vloxseg5ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/bfloat16/vloxseg6ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/bfloat16/vloxseg7ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/bfloat16/vloxseg8ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/bfloat16/vlse16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/bfloat16/vlseg2e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/bfloat16/vlseg2e16ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/bfloat16/vlseg3e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/bfloat16/vlseg3e16ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/bfloat16/vlseg4e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/bfloat16/vlseg4e16ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/bfloat16/vlseg5e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/bfloat16/vlseg5e16ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/bfloat16/vlseg6e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/bfloat16/vlseg6e16ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/bfloat16/vlseg7e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/bfloat16/vlseg7e16ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/bfloat16/vlseg8e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/bfloat16/vlseg8e16ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/bfloat16/vlsseg2e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/bfloat16/vlsseg3e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/bfloat16/vlsseg4e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/bfloat16/vlsseg5e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/bfloat16/vlsseg6e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/bfloat16/vlsseg7e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/bfloat16/vlsseg8e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/bfloat16/vluxei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/bfloat16/vluxseg2ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/bfloat16/vluxseg3ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/bfloat16/vluxseg4ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/bfloat16/vluxseg5ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/bfloat16/vluxseg6ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/bfloat16/vluxseg7ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/bfloat16/vluxseg8ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/sf_vfwmacc_4x4x4.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vfncvt.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vfncvt_f_f.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vfncvtbf16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vfwcvt.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vfwcvt_f_f.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vfwcvtbf16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vfwmaccbf16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vle16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vle16ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vloxei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vloxei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vloxei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vloxei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vloxseg2ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vloxseg2ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vloxseg2ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vloxseg2ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vloxseg3ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vloxseg3ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vloxseg3ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vloxseg3ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vloxseg4ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vloxseg4ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vloxseg4ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vloxseg4ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vloxseg5ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vloxseg5ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vloxseg5ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vloxseg5ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vloxseg6ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vloxseg6ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vloxseg6ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vloxseg6ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vloxseg7ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vloxseg7ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vloxseg7ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vloxseg7ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vloxseg8ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vloxseg8ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vloxseg8ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vloxseg8ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlse16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlseg2e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlseg2e16ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlseg3e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlseg3e16ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlseg4e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlseg4e16ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlseg5e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlseg5e16ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlseg6e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlseg6e16ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlseg7e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlseg7e16ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlseg8e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlseg8e16ff.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlsseg2e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlsseg3e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlsseg4e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlsseg5e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlsseg6e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlsseg7e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vlsseg8e16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vluxei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vluxei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vluxei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vluxei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vluxseg2ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vluxseg2ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vluxseg2ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vluxseg2ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vluxseg3ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vluxseg3ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vluxseg3ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vluxseg3ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vluxseg4ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vluxseg4ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vluxseg4ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vluxseg4ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vluxseg5ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vluxseg5ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vluxseg5ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vluxseg5ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vluxseg6ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vluxseg6ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vluxseg6ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vluxseg6ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vluxseg7ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vluxseg7ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vluxseg7ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vluxseg7ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vluxseg8ei16.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vluxseg8ei32.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vluxseg8ei64.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vluxseg8ei8.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vmerge.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vmv.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-handcrafted/rvv-intrinsic-datatypes.cpp
    R clang/test/CodeGen/RISCV/rvv-intrinsics-handcrafted/zvfhmin.c
    M clang/test/CodeGen/SystemZ/systemz-abi.c
    R clang/test/CodeGen/X86/3dnow-builtins.c
    M clang/test/CodeGen/X86/math-builtins.c
    M clang/test/CodeGen/X86/mmx-builtins.c
    M clang/test/CodeGen/X86/mmx-inline-asm.c
    M clang/test/CodeGen/X86/mmx-shift-with-immediate.c
    M clang/test/CodeGen/X86/x86_64-vaarg.c
    M clang/test/CodeGen/aarch64-branch-protection-attr.c
    M clang/test/CodeGen/aarch64-byval-temp.c
    A clang/test/CodeGen/aarch64-fmv-resolver-emission.c
    A clang/test/CodeGen/aarch64-fmv-streaming.c
    A clang/test/CodeGen/aarch64-gcs.c
    A clang/test/CodeGen/aarch64-inlineasm-ios.c
    M clang/test/CodeGen/aarch64-mixed-target-attributes.c
    M clang/test/CodeGen/aarch64-sign-return-address.c
    M clang/test/CodeGen/aarch64-sme-inline-streaming-attrs.c
    A clang/test/CodeGen/aarch64-sme2p1-intrinsics/acle_sme2p1_movaz.c
    M clang/test/CodeGen/aarch64-targetattr.c
    M clang/test/CodeGen/aix-builtin-cpu-is.c
    M clang/test/CodeGen/arm-branch-protection-attr-1.c
    M clang/test/CodeGen/arm-branch-protection-attr-2.c
    M clang/test/CodeGen/arm-mve-intrinsics/vld24.c
    M clang/test/CodeGen/arm-vfp16-arguments2.cpp
    M clang/test/CodeGen/arm64-microsoft-intrinsics.c
    A clang/test/CodeGen/arm64ec-hybrid-patchable.c
    M clang/test/CodeGen/asan-destructor-kind.cpp
    M clang/test/CodeGen/asan-frame-pointer.cpp
    M clang/test/CodeGen/asan-globals.cpp
    M clang/test/CodeGen/asm-inout.c
    M clang/test/CodeGen/attr-counted-by.c
    M clang/test/CodeGen/attr-nomerge.cpp
    M clang/test/CodeGen/attr-noundef.cpp
    M clang/test/CodeGen/attr-target-clones-aarch64.c
    M clang/test/CodeGen/attr-target-version.c
    M clang/test/CodeGen/attr-target-x86-mmx.c
    M clang/test/CodeGen/attr-target-x86.c
    M clang/test/CodeGen/blocks.c
    A clang/test/CodeGen/bpf-debug-info-extern-func.c
    A clang/test/CodeGen/bpf-debug-info-unref.c
    M clang/test/CodeGen/builtin-cpu-supports.c
    M clang/test/CodeGen/builtins-bitint.c
    M clang/test/CodeGen/builtins-elementwise-math.c
    R clang/test/CodeGen/builtins-nvptx-native-half-type-err.c
    A clang/test/CodeGen/builtins-nvptx-native-half-type-native.c
    M clang/test/CodeGen/builtins-overflow.c
    M clang/test/CodeGen/builtins-wasm.c
    M clang/test/CodeGen/builtins-x86.c
    A clang/test/CodeGen/constexpr-c23-internal-linkage.c
    M clang/test/CodeGen/constrained-math-builtins.c
    A clang/test/CodeGen/coverage-target-attr.c
    M clang/test/CodeGen/ext-int-cc.c
    M clang/test/CodeGen/ext-int-sanitizer.cpp
    M clang/test/CodeGen/ext-int.c
    M clang/test/CodeGen/extend-arg-64.c
    M clang/test/CodeGen/finite-math.c
    M clang/test/CodeGen/fp-floatcontrol-stack.cpp
    M clang/test/CodeGen/fp-options-to-fast-math-flags.c
    M clang/test/CodeGen/ifunc.c
    A clang/test/CodeGen/inline-asm-size-zero.c
    M clang/test/CodeGen/isfpclass.c
    M clang/test/CodeGen/kcfi.c
    M clang/test/CodeGen/libcalls.c
    A clang/test/CodeGen/math-libcalls-tbaa.c
    M clang/test/CodeGen/math-libcalls.c
    A clang/test/CodeGen/ms_mangler_templatearg_opte.cpp
    M clang/test/CodeGen/no-skipped-passes-O0-opt-bisect.c
    M clang/test/CodeGen/nofpclass.c
    A clang/test/CodeGen/nsan-basic.c
    M clang/test/CodeGen/palignr.c
    M clang/test/CodeGen/paren-list-agg-init.cpp
    R clang/test/CodeGen/pr26099.c
    M clang/test/CodeGen/pr3518.c
    M clang/test/CodeGen/pragma-cx-limited-range.c
    M clang/test/CodeGen/ptrauth-function-attributes.c
    A clang/test/CodeGen/ptrauth-function-lvalue-cast-disc.c
    A clang/test/CodeGen/ptrauth-function-type-discriminator-cast.c
    A clang/test/CodeGen/ptrauth-function-type-discriminator.c
    A clang/test/CodeGen/ptrauth-ubsan-vptr.cpp
    M clang/test/CodeGen/sanitize-metadata-ignorelist.c
    M clang/test/CodeGen/sanitize-metadata-nosanitize.c
    M clang/test/CodeGen/sanitize-metadata.c
    M clang/test/CodeGen/sanitizer-module-constructor.c
    M clang/test/CodeGen/stdcall-fastcall.c
    M clang/test/CodeGen/target-data.c
    M clang/test/CodeGen/tbaa-pointers.c
    M clang/test/CodeGen/ubsan-function.cpp
    M clang/test/CodeGen/ubsan-shift-bitint.c
    A clang/test/CodeGen/variadic-nvptx.c
    M clang/test/CodeGen/vectorcall.c
    M clang/test/CodeGen/voidptr-vaarg.c
    M clang/test/CodeGenCUDA/amdgpu-atomic-ops.cu
    M clang/test/CodeGenCUDA/amdgpu-kernel-arg-pointer-type.cu
    M clang/test/CodeGenCUDA/builtins-amdgcn.cu
    M clang/test/CodeGenCUDA/builtins-spirv-amdgcn.cu
    M clang/test/CodeGenCUDA/convergent.cu
    A clang/test/CodeGenCUDA/template-class-static-member.cu
    M clang/test/CodeGenCXX/2011-12-19-init-list-ctor.cpp
    A clang/test/CodeGenCXX/aarch64-fmv-resolver-emission.cpp
    M clang/test/CodeGenCXX/aarch64-mangle-sve-vectors-msvc.cpp
    M clang/test/CodeGenCXX/address-space-cast-coerce.cpp
    A clang/test/CodeGenCXX/arm64-generated-fn-attr.cpp
    M clang/test/CodeGenCXX/atomicinit.cpp
    M clang/test/CodeGenCXX/attr-annotate.cpp
    M clang/test/CodeGenCXX/attr-likelihood-iteration-stmt.cpp
    M clang/test/CodeGenCXX/attr-target-clones-aarch64.cpp
    M clang/test/CodeGenCXX/attr-target-version.cpp
    M clang/test/CodeGenCXX/bitfield-access-empty.cpp
    M clang/test/CodeGenCXX/catch-undef-behavior.cpp
    M clang/test/CodeGenCXX/class-layout.cpp
    M clang/test/CodeGenCXX/compound-literals.cpp
    M clang/test/CodeGenCXX/cxx1z-constexpr-if.cpp
    M clang/test/CodeGenCXX/cxx2a-consteval.cpp
    A clang/test/CodeGenCXX/debug-info-explicit-this.cpp
    M clang/test/CodeGenCXX/exceptions.cpp
    M clang/test/CodeGenCXX/ext-int.cpp
    M clang/test/CodeGenCXX/fmv-namespace.cpp
    M clang/test/CodeGenCXX/lambda-deterministic-captures.cpp
    M clang/test/CodeGenCXX/mangle-fail.cpp
    A clang/test/CodeGenCXX/mangle-ms-auto-templates-memptrs.cpp
    A clang/test/CodeGenCXX/mangle-ms-auto-templates-nullptr.cpp
    M clang/test/CodeGenCXX/microsoft-uuidof.cpp
    M clang/test/CodeGenCXX/modules-vtable.cppm
    A clang/test/CodeGenCXX/msabi-preserve-none-cc.cpp
    M clang/test/CodeGenCXX/no-const-init-cxx2a.cpp
    M clang/test/CodeGenCXX/nullptr.cpp
    M clang/test/CodeGenCXX/partial-destruction.cpp
    M clang/test/CodeGenCXX/pod-member-memcpys.cpp
    M clang/test/CodeGenCXX/pr18962.cpp
    R clang/test/CodeGenCXX/pr70585.cppm
    A clang/test/CodeGenCXX/ptrauth-apple-kext-indirect-call-2.cpp
    A clang/test/CodeGenCXX/ptrauth-apple-kext-indirect-call.cpp
    A clang/test/CodeGenCXX/ptrauth-apple-kext-indirect-virtual-dtor-call.cpp
    A clang/test/CodeGenCXX/ptrauth-explicit-vtable-pointer-control.cpp
    A clang/test/CodeGenCXX/ptrauth-global-constant-initializers.cpp
    A clang/test/CodeGenCXX/ptrauth-member-function-pointer.cpp
    A clang/test/CodeGenCXX/ptrauth-rtti-layout.cpp
    A clang/test/CodeGenCXX/ptrauth-static-destructors.cpp
    A clang/test/CodeGenCXX/ptrauth-throw.cpp
    A clang/test/CodeGenCXX/ptrauth-thunks.cpp
    A clang/test/CodeGenCXX/ptrauth-type-info-vtable.cpp
    A clang/test/CodeGenCXX/ptrauth-virtual-function.cpp
    A clang/test/CodeGenCXX/ptrauth-vtable-virtual-inheritance-thunk.cpp
    M clang/test/CodeGenCXX/references.cpp
    M clang/test/CodeGenCXX/regparm.cpp
    M clang/test/CodeGenCXX/temporaries.cpp
    M clang/test/CodeGenCXX/trivial_abi.cpp
    M clang/test/CodeGenCXX/ubsan-vtable-checks.cpp
    M clang/test/CodeGenCXX/x86_32-vaarg.cpp
    A clang/test/CodeGenCXX/zero-init-empty-virtual.cpp
    A clang/test/CodeGenCoroutines/coro-elide-thinlto.cpp
    M clang/test/CodeGenHIP/default-attributes.hip
    M clang/test/CodeGenHIP/dpp-const-fold.hip
    M clang/test/CodeGenHIP/printf-builtin.hip
    M clang/test/CodeGenHIP/printf.cpp
    M clang/test/CodeGenHIP/printf_nonhostcall.cpp
    M clang/test/CodeGenHIP/spirv-amdgcn-dpp-const-fold.hip
    M clang/test/CodeGenHLSL/BasicFeatures/standard_conversion_sequences.hlsl
    M clang/test/CodeGenHLSL/builtins/dot-builtin.hlsl
    M clang/test/CodeGenHLSL/builtins/dot.hlsl
    M clang/test/CodeGenHLSL/builtins/frac.hlsl
    M clang/test/CodeGenHLSL/builtins/lerp.hlsl
    M clang/test/CodeGenHLSL/builtins/mad.hlsl
    A clang/test/CodeGenHLSL/export.hlsl
    A clang/test/CodeGenHLSL/loops/unroll.hlsl
    M clang/test/CodeGenObjC/arc-foreach.m
    M clang/test/CodeGenObjC/blocks.m
    M clang/test/CodeGenObjCXX/lambda-to-block.mm
    M clang/test/CodeGenOpenCL/addr-space-struct-arg.cl
    M clang/test/CodeGenOpenCL/amdgpu-abi-struct-arg-byref.cl
    M clang/test/CodeGenOpenCL/amdgpu-features-illegal.cl
    A clang/test/CodeGenOpenCL/builtins-alloca.cl
    M clang/test/CodeGenOpenCL/builtins-amdgcn-gfx10.cl
    M clang/test/CodeGenOpenCL/builtins-amdgcn-gfx11.cl
    M clang/test/CodeGenOpenCL/builtins-amdgcn-global-load-tr-gfx11-err.cl
    M clang/test/CodeGenOpenCL/builtins-amdgcn-global-load-tr-gfx12-w32-err.cl
    M clang/test/CodeGenOpenCL/builtins-amdgcn-global-load-tr-gfx12-w64-err.cl
    M clang/test/CodeGenOpenCL/builtins-amdgcn-global-load-tr-w32.cl
    M clang/test/CodeGenOpenCL/builtins-amdgcn-global-load-tr-w64.cl
    A clang/test/CodeGenOpenCL/builtins-amdgcn-raw-buffer-load.cl
    M clang/test/CodeGenOpenCL/builtins-amdgcn-raw-buffer-store.cl
    M clang/test/CodeGenOpenCL/builtins-amdgcn-vi.cl
    M clang/test/CodeGenOpenCL/builtins-f16.cl
    M clang/test/CodeGenOpenCL/relaxed-fpmath.cl
    A clang/test/CodeGenOpenCLCXX/version.clcpp
    M clang/test/CoverageMapping/system_macro.cpp
    A clang/test/Driver/Inputs/baremetal_arm/lib/crt0.o
    A clang/test/Driver/Inputs/basic_baremetal_tree/bin/.keep
    A clang/test/Driver/Inputs/basic_baremetal_tree/include/armv6m-unknown-none-eabi/.keep
    A clang/test/Driver/Inputs/basic_baremetal_tree/include/armv6m-unknown-none-eabi/c++/v1/.keep
    A clang/test/Driver/Inputs/basic_baremetal_tree/include/c++/v1/.keep
    A clang/test/Driver/Inputs/basic_baremetal_tree/lib/armv6m-unknown-none-eabi/.keep
    A clang/test/Driver/Inputs/basic_baremetal_tree/lib/armv6m-unknown-none-eabi/crt0.o
    A clang/test/Driver/Inputs/multilib_aarch64_linux_tree/usr/include/aarch64-linux-gnu/.keep
    A clang/test/Driver/Inputs/multilib_aarch64_linux_tree/usr/include/aarch64-linux-pauthtest/.keep
    M clang/test/Driver/Ofast.c
    M clang/test/Driver/aarch64-fp16.c
    M clang/test/Driver/aarch64-mac-cpus.c
    A clang/test/Driver/aarch64-multilib-pauthabi.c
    A clang/test/Driver/aarch64-multilib-rcpc3.c
    M clang/test/Driver/aarch64-ptrauth.c
    M clang/test/Driver/aarch64-sve2.c
    A clang/test/Driver/aarch64-v8a.c
    A clang/test/Driver/aarch64-v9a.c
    A clang/test/Driver/aix-save-reg-params.c
    M clang/test/Driver/amdgpu-openmp-toolchain.c
    M clang/test/Driver/amdgpu-toolchain.c
    M clang/test/Driver/baremetal.cpp
    A clang/test/Driver/crel.c
    M clang/test/Driver/cuda-cross-compiling.c
    A clang/test/Driver/darwin-print-libgcc-file-name.c
    M clang/test/Driver/debug-options.c
    M clang/test/Driver/dxc_debug.hlsl
    M clang/test/Driver/dxc_fcgl.hlsl
    M clang/test/Driver/fp-contract.c
    M clang/test/Driver/fp-model.c
    M clang/test/Driver/fpatchable-function-entry.c
    M clang/test/Driver/frame-pointer.c
    A clang/test/Driver/fraw-string-literals-cxx.cpp
    M clang/test/Driver/ftime-trace-sections.cpp
    M clang/test/Driver/ftime-trace-sections.py
    M clang/test/Driver/ftime-trace.cpp
    M clang/test/Driver/gpu-libc-headers.c
    M clang/test/Driver/hexagon-toolchain-linux.c
    M clang/test/Driver/immediate-options.c
    M clang/test/Driver/linker-wrapper-libs.c
    A clang/test/Driver/linker-wrapper-llvm-help.c
    A clang/test/Driver/linker-wrapper-passes.c
    M clang/test/Driver/linker-wrapper.c
    M clang/test/Driver/loongarch-features.c
    M clang/test/Driver/loongarch-march.c
    M clang/test/Driver/loongarch-mlasx.c
    A clang/test/Driver/loongarch-msimd.c
    M clang/test/Driver/loongarch-msingle-float.c
    M clang/test/Driver/loongarch-msoft-float.c
    M clang/test/Driver/loongarch-mtune.c
    M clang/test/Driver/lto-jobs.c
    A clang/test/Driver/modulemap-allow-subdirectory-search.c
    A clang/test/Driver/msse2avx.c
    A clang/test/Driver/nvlink-wrapper.c
    M clang/test/Driver/ohos.c
    M clang/test/Driver/opencl.cl
    M clang/test/Driver/openmp-offload-gpu.c
    M clang/test/Driver/ppc-unsupported.c
    A clang/test/Driver/print-enabled-extensions/aarch64-a64fx.c
    A clang/test/Driver/print-enabled-extensions/aarch64-ampere1.c
    A clang/test/Driver/print-enabled-extensions/aarch64-ampere1a.c
    A clang/test/Driver/print-enabled-extensions/aarch64-ampere1b.c
    A clang/test/Driver/print-enabled-extensions/aarch64-apple-a10.c
    A clang/test/Driver/print-enabled-extensions/aarch64-apple-a11.c
    A clang/test/Driver/print-enabled-extensions/aarch64-apple-a12.c
    A clang/test/Driver/print-enabled-extensions/aarch64-apple-a13.c
    A clang/test/Driver/print-enabled-extensions/aarch64-apple-a14.c
    A clang/test/Driver/print-enabled-extensions/aarch64-apple-a15.c
    A clang/test/Driver/print-enabled-extensions/aarch64-apple-a16.c
    A clang/test/Driver/print-enabled-extensions/aarch64-apple-a17.c
    A clang/test/Driver/print-enabled-extensions/aarch64-apple-a7.c
    A clang/test/Driver/print-enabled-extensions/aarch64-apple-m4.c
    A clang/test/Driver/print-enabled-extensions/aarch64-armv8-a.c
    A clang/test/Driver/print-enabled-extensions/aarch64-armv8-r.c
    A clang/test/Driver/print-enabled-extensions/aarch64-armv8.1-a.c
    A clang/test/Driver/print-enabled-extensions/aarch64-armv8.2-a.c
    A clang/test/Driver/print-enabled-extensions/aarch64-armv8.3-a.c
    A clang/test/Driver/print-enabled-extensions/aarch64-armv8.4-a.c
    A clang/test/Driver/print-enabled-extensions/aarch64-armv8.5-a.c
    A clang/test/Driver/print-enabled-extensions/aarch64-armv8.6-a.c
    A clang/test/Driver/print-enabled-extensions/aarch64-armv8.7-a.c
    A clang/test/Driver/print-enabled-extensions/aarch64-armv8.8-a.c
    A clang/test/Driver/print-enabled-extensions/aarch64-armv8.9-a.c
    A clang/test/Driver/print-enabled-extensions/aarch64-armv9-a.c
    A clang/test/Driver/print-enabled-extensions/aarch64-armv9.1-a.c
    A clang/test/Driver/print-enabled-extensions/aarch64-armv9.2-a.c
    A clang/test/Driver/print-enabled-extensions/aarch64-armv9.3-a.c
    A clang/test/Driver/print-enabled-extensions/aarch64-armv9.4-a.c
    A clang/test/Driver/print-enabled-extensions/aarch64-armv9.5-a.c
    A clang/test/Driver/print-enabled-extensions/aarch64-carmel.c
    A clang/test/Driver/print-enabled-extensions/aarch64-cortex-a34.c
    A clang/test/Driver/print-enabled-extensions/aarch64-cortex-a35.c
    A clang/test/Driver/print-enabled-extensions/aarch64-cortex-a510.c
    A clang/test/Driver/print-enabled-extensions/aarch64-cortex-a520.c
    A clang/test/Driver/print-enabled-extensions/aarch64-cortex-a520ae.c
    A clang/test/Driver/print-enabled-extensions/aarch64-cortex-a53.c
    A clang/test/Driver/print-enabled-extensions/aarch64-cortex-a55.c
    A clang/test/Driver/print-enabled-extensions/aarch64-cortex-a57.c
    A clang/test/Driver/print-enabled-extensions/aarch64-cortex-a65.c
    A clang/test/Driver/print-enabled-extensions/aarch64-cortex-a65ae.c
    A clang/test/Driver/print-enabled-extensions/aarch64-cortex-a710.c
    A clang/test/Driver/print-enabled-extensions/aarch64-cortex-a715.c
    A clang/test/Driver/print-enabled-extensions/aarch64-cortex-a72.c
    A clang/test/Driver/print-enabled-extensions/aarch64-cortex-a720.c
    A clang/test/Driver/print-enabled-extensions/aarch64-cortex-a720ae.c
    A clang/test/Driver/print-enabled-extensions/aarch64-cortex-a725.c
    A clang/test/Driver/print-enabled-extensions/aarch64-cortex-a73.c
    A clang/test/Driver/print-enabled-extensions/aarch64-cortex-a75.c
    A clang/test/Driver/print-enabled-extensions/aarch64-cortex-a76.c
    A clang/test/Driver/print-enabled-extensions/aarch64-cortex-a76ae.c
    A clang/test/Driver/print-enabled-extensions/aarch64-cortex-a77.c
    A clang/test/Driver/print-enabled-extensions/aarch64-cortex-a78.c
    A clang/test/Driver/print-enabled-extensions/aarch64-cortex-a78ae.c
    A clang/test/Driver/print-enabled-extensions/aarch64-cortex-a78c.c
    A clang/test/Driver/print-enabled-extensions/aarch64-cortex-r82.c
    A clang/test/Driver/print-enabled-extensions/aarch64-cortex-r82ae.c
    A clang/test/Driver/print-enabled-extensions/aarch64-cortex-x1.c
    A clang/test/Driver/print-enabled-extensions/aarch64-cortex-x1c.c
    A clang/test/Driver/print-enabled-extensions/aarch64-cortex-x2.c
    A clang/test/Driver/print-enabled-extensions/aarch64-cortex-x3.c
    A clang/test/Driver/print-enabled-extensions/aarch64-cortex-x4.c
    A clang/test/Driver/print-enabled-extensions/aarch64-cortex-x925.c
    A clang/test/Driver/print-enabled-extensions/aarch64-exynos-m3.c
    A clang/test/Driver/print-enabled-extensions/aarch64-exynos-m4.c
    A clang/test/Driver/print-enabled-extensions/aarch64-exynos-m5.c
    A clang/test/Driver/print-enabled-extensions/aarch64-falkor.c
    A clang/test/Driver/print-enabled-extensions/aarch64-generic.c
    A clang/test/Driver/print-enabled-extensions/aarch64-kryo.c
    A clang/test/Driver/print-enabled-extensions/aarch64-neoverse-512tvb.c
    A clang/test/Driver/print-enabled-extensions/aarch64-neoverse-e1.c
    A clang/test/Driver/print-enabled-extensions/aarch64-neoverse-n1.c
    A clang/test/Driver/print-enabled-extensions/aarch64-neoverse-n2.c
    A clang/test/Driver/print-enabled-extensions/aarch64-neoverse-n3.c
    A clang/test/Driver/print-enabled-extensions/aarch64-neoverse-v1.c
    A clang/test/Driver/print-enabled-extensions/aarch64-neoverse-v2.c
    A clang/test/Driver/print-enabled-extensions/aarch64-neoverse-v3.c
    A clang/test/Driver/print-enabled-extensions/aarch64-neoverse-v3ae.c
    A clang/test/Driver/print-enabled-extensions/aarch64-oryon-1.c
    A clang/test/Driver/print-enabled-extensions/aarch64-saphira.c
    A clang/test/Driver/print-enabled-extensions/aarch64-thunderx.c
    A clang/test/Driver/print-enabled-extensions/aarch64-thunderx2t99.c
    A clang/test/Driver/print-enabled-extensions/aarch64-thunderx3t110.c
    A clang/test/Driver/print-enabled-extensions/aarch64-thunderxt81.c
    A clang/test/Driver/print-enabled-extensions/aarch64-thunderxt83.c
    A clang/test/Driver/print-enabled-extensions/aarch64-thunderxt88.c
    A clang/test/Driver/print-enabled-extensions/aarch64-tsv110.c
    A clang/test/Driver/print-supported-extensions-aarch64.c
    A clang/test/Driver/print-supported-extensions-arm.c
    A clang/test/Driver/print-supported-extensions-riscv.c
    M clang/test/Driver/print-supported-extensions.c
    A clang/test/Driver/ps4-linker.c
    R clang/test/Driver/ps4-ps5-linker.c
    M clang/test/Driver/ps4-ps5-runtime-flags.c
    A clang/test/Driver/ps5-linker.c
    M clang/test/Driver/riscv-arch.c
    M clang/test/Driver/riscv-features.c
    M clang/test/Driver/sanitizer-ld.c
    M clang/test/Driver/stack-size-section.c
    M clang/test/Driver/unified-lto.c
    M clang/test/Driver/unknown-std.c
    A clang/test/Driver/warn-fsyntax-only.c
    M clang/test/Driver/x86-target-features.c
    A clang/test/Frontend/arm-branch-protection-lto.c
    M clang/test/Frontend/fixed_point_comparisons.c
    A clang/test/Frontend/module-file-info-not-a-module.c
    A clang/test/Frontend/skip-function-bodies.cpp
    M clang/test/Headers/__clang_hip_cmath.hip
    M clang/test/Headers/__clang_hip_math.hip
    A clang/test/Headers/__cpuidex_conflict.c
    M clang/test/Headers/cpuid.c
    M clang/test/Headers/float.c
    M clang/test/Headers/mm3dnow.c
    A clang/test/Headers/stdarg-cxx-modules.cpp
    M clang/test/Headers/stdatomic.c
    M clang/test/Headers/stddefneeds.cpp
    M clang/test/Headers/xmmintrin.c
    A clang/test/Index/USR/func-template.cpp
    A clang/test/Index/binop.cpp
    M clang/test/Index/blocks.c
    M clang/test/Index/c-index-api-loadTU-test.m
    M clang/test/Index/index-concepts.cpp
    M clang/test/Index/load-staticassert.cpp
    M clang/test/Index/nested-binaryoperators.cpp
    M clang/test/Index/pch-with-errors.c
    M clang/test/Index/preamble.c
    M clang/test/Index/print-type.c
    M clang/test/Index/print-type.cpp
    M clang/test/Index/recursive-cxx-member-calls.cpp
    M clang/test/Index/remap-load.c
    M clang/test/Index/usrs.m
    M clang/test/InstallAPI/diagnostics-dsym.test
    A clang/test/InstallAPI/directory-scanning-subdirectories.test
    A clang/test/InstallAPI/reexport-with-linker-symbols.test
    A clang/test/Lexer/raw-string-ext.c
    A clang/test/Misc/cc1as-crel.s
    M clang/test/Misc/pragma-attribute-supported-attributes-list.test
    M clang/test/Misc/target-invalid-cpu-note.c
    M clang/test/Misc/warning-flags.c
    A clang/test/Modules/export-redecl-in-language-linkage.cppm
    A clang/test/Modules/forward-friend.cppm
    A clang/test/Modules/inline-builtins.cppm
    M clang/test/Modules/load-module-with-errors.m
    A clang/test/Modules/modulemap-allow-subdirectory-search.m
    A clang/test/Modules/pch-in-module-units.cppm
    A clang/test/Modules/pr97244.cppm
    A clang/test/Modules/stddef.cpp
    M clang/test/Modules/subdirectory-module-maps-working-dir.m
    M clang/test/Modules/template_name_lookup.cpp
    A clang/test/Modules/use-after-free-2.c
    M clang/test/OpenMP/Inputs/nesting_of_regions.cpp
    A clang/test/OpenMP/amdgpu-unsafe-fp-atomics.cpp
    M clang/test/OpenMP/declare_mapper_codegen.cpp
    M clang/test/OpenMP/deferred-diags.cpp
    M clang/test/OpenMP/depend_iterator_bug.c
    M clang/test/OpenMP/distribute_parallel_for_codegen.cpp
    M clang/test/OpenMP/distribute_parallel_for_simd_codegen.cpp
    M clang/test/OpenMP/distribute_parallel_for_simd_if_codegen.cpp
    M clang/test/OpenMP/generic_loop_ast_print.cpp
    M clang/test/OpenMP/generic_loop_codegen.cpp
    A clang/test/OpenMP/interchange_ast_print.cpp
    A clang/test/OpenMP/interchange_codegen.cpp
    A clang/test/OpenMP/interchange_messages.cpp
    M clang/test/OpenMP/irbuilder_for_iterator.cpp
    M clang/test/OpenMP/irbuilder_for_rangefor.cpp
    M clang/test/OpenMP/nvptx_SPMD_codegen.cpp
    M clang/test/OpenMP/nvptx_target_parallel_reduction_codegen.cpp
    M clang/test/OpenMP/nvptx_target_parallel_reduction_codegen_tbaa_PR46146.cpp
    R clang/test/OpenMP/nvptx_target_printf_codegen.c
    M clang/test/OpenMP/nvptx_teams_reduction_codegen.cpp
    M clang/test/OpenMP/ompx_attributes_codegen.cpp
    M clang/test/OpenMP/ordered_codegen.cpp
    M clang/test/OpenMP/parallel_codegen.cpp
    M clang/test/OpenMP/parallel_for_codegen.cpp
    M clang/test/OpenMP/parallel_master_taskloop_simd_codegen.cpp
    A clang/test/OpenMP/reduction_complex.c
    M clang/test/OpenMP/reduction_implicit_map.cpp
    A clang/test/OpenMP/requires_default_atomic_mem_order.cpp
    A clang/test/OpenMP/reverse_ast_print.cpp
    A clang/test/OpenMP/reverse_codegen.cpp
    A clang/test/OpenMP/reverse_messages.cpp
    M clang/test/OpenMP/target_data_use_device_addr_codegen.cpp
    M clang/test/OpenMP/target_defaultmap_messages.cpp
    M clang/test/OpenMP/target_enter_data_codegen.cpp
    M clang/test/OpenMP/target_exit_data_codegen.cpp
    M clang/test/OpenMP/target_map_both_pointer_pointee_codegen.cpp
    M clang/test/OpenMP/target_parallel_debug_codegen.cpp
    M clang/test/OpenMP/target_parallel_defaultmap_messages.cpp
    M clang/test/OpenMP/target_parallel_for_codegen.cpp
    M clang/test/OpenMP/target_parallel_for_debug_codegen.cpp
    M clang/test/OpenMP/target_parallel_for_defaultmap_messages.cpp
    M clang/test/OpenMP/target_parallel_for_simd_codegen.cpp
    M clang/test/OpenMP/target_parallel_for_simd_defaultmap_messages.cpp
    M clang/test/OpenMP/target_parallel_generic_loop_codegen-3.cpp
    M clang/test/OpenMP/target_simd_defaultmap_messages.cpp
    M clang/test/OpenMP/target_teams_defaultmap_messages.cpp
    M clang/test/OpenMP/target_teams_distribute_defaultmap_messages.cpp
    M clang/test/OpenMP/target_teams_distribute_parallel_for_defaultmap_messages.cpp
    M clang/test/OpenMP/target_teams_distribute_parallel_for_if_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_parallel_for_schedule_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_defaultmap_messages.cpp
    M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_if_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_schedule_codegen.cpp
    M clang/test/OpenMP/target_teams_generic_loop_codegen.cpp
    M clang/test/OpenMP/target_teams_generic_loop_if_codegen.cpp
    M clang/test/OpenMP/target_update_codegen.cpp
    M clang/test/OpenMP/task_codegen.c
    M clang/test/OpenMP/task_member_call_codegen.cpp
    M clang/test/OpenMP/teams_distribute_parallel_for_if_codegen.cpp
    M clang/test/OpenMP/teams_distribute_parallel_for_schedule_codegen.cpp
    M clang/test/OpenMP/teams_distribute_parallel_for_simd_if_codegen.cpp
    M clang/test/OpenMP/teams_distribute_parallel_for_simd_schedule_codegen.cpp
    M clang/test/OpenMP/teams_distribute_simd_codegen.cpp
    M clang/test/PCH/aarch64-sve-types.c
    M clang/test/PCH/cxx-explicit-specifier.cpp
    M clang/test/PCH/cxx2a-requires-expr.cpp
    M clang/test/PCH/pragma-loop.cpp
    M clang/test/Parser/compound_literal.c
    M clang/test/Parser/cxx-concepts-requires-clause.cpp
    M clang/test/Parser/cxx-template-argument.cpp
    M clang/test/Parser/cxx-template-decl.cpp
    M clang/test/Parser/cxx2a-concepts-requires-expr.cpp
    M clang/test/Parser/generic-selection-type-extension-pedantic.c
    A clang/test/Parser/namelookup-anonymous-struct.c
    A clang/test/ParserHLSL/bitfields.hlsl
    A clang/test/ParserHLSL/hlsl_annotations_on_struct_members.hlsl
    A clang/test/ParserHLSL/hlsl_resource_class_attr.hlsl
    A clang/test/ParserHLSL/hlsl_resource_class_attr_error.hlsl
    A clang/test/Preprocessor/Inputs/big_char.txt
    M clang/test/Preprocessor/aarch64-target-features.c
    A clang/test/Preprocessor/c2y.c
    M clang/test/Preprocessor/embed_codegen.cpp
    M clang/test/Preprocessor/embed_constexpr.cpp
    A clang/test/Preprocessor/embed_search_paths.c
    M clang/test/Preprocessor/embed_weird.cpp
    M clang/test/Preprocessor/has_builtin_cpuid.c
    M clang/test/Preprocessor/hexagon-predefines.c
    M clang/test/Preprocessor/init-aarch64.c
    M clang/test/Preprocessor/init-loongarch.c
    M clang/test/Preprocessor/init-ppc64.c
    M clang/test/Preprocessor/init.c
    A clang/test/Preprocessor/pragma_mc_func.c
    M clang/test/Preprocessor/predefined-arch-macros.c
    M clang/test/Preprocessor/predefined-macros.c
    M clang/test/Preprocessor/ptrauth_feature.c
    M clang/test/Preprocessor/riscv-target-features.c
    M clang/test/Preprocessor/x86_target_features.c
    M clang/test/Rewriter/rewrite-modern-catch.m
    A clang/test/Sema/aarch64-fmv-streaming.c
    A clang/test/Sema/aarch64-neon-without-target-feature.cpp
    M clang/test/Sema/aarch64-sme-func-attrs.c
    A clang/test/Sema/aarch64-sme2p1-intrinsics/acle_sme2p1_imm.cpp
    M clang/test/Sema/alignas.c
    M clang/test/Sema/arm-interrupt-attr.c
    M clang/test/Sema/atomic-ops.c
    M clang/test/Sema/attr-capabilities.c
    A clang/test/Sema/attr-counted-by-bounds-safety-vlas.c
    A clang/test/Sema/attr-counted-by-or-null-last-field.c
    A clang/test/Sema/attr-counted-by-or-null-late-parsed-off.c
    A clang/test/Sema/attr-counted-by-or-null-late-parsed-struct-ptrs.c
    A clang/test/Sema/attr-counted-by-or-null-struct-ptrs-sizeless-types.c
    A clang/test/Sema/attr-counted-by-or-null-struct-ptrs.c
    A clang/test/Sema/attr-counted-by-or-null-vla-sizeless-types.c
    M clang/test/Sema/attr-counted-by-vla.c
    M clang/test/Sema/attr-format.c
    M clang/test/Sema/attr-ownership.c
    M clang/test/Sema/attr-ownership.cpp
    A clang/test/Sema/attr-sized-by-last-field.c
    A clang/test/Sema/attr-sized-by-late-parsed-off.c
    A clang/test/Sema/attr-sized-by-late-parsed-struct-ptrs.c
    A clang/test/Sema/attr-sized-by-or-null-last-field.c
    A clang/test/Sema/attr-sized-by-or-null-late-parsed-off.c
    A clang/test/Sema/attr-sized-by-or-null-late-parsed-struct-ptrs.c
    A clang/test/Sema/attr-sized-by-or-null-struct-ptrs-sizeless-types.c
    A clang/test/Sema/attr-sized-by-or-null-struct-ptrs.c
    A clang/test/Sema/attr-sized-by-or-null-vla-sizeless-types.c
    A clang/test/Sema/attr-sized-by-struct-ptrs-sizeless-types.c
    A clang/test/Sema/attr-sized-by-struct-ptrs.c
    A clang/test/Sema/attr-sized-by-vla-sizeless-types.c
    M clang/test/Sema/attr-target-version.c
    M clang/test/Sema/attr-weak.c
    M clang/test/Sema/builtin-cpu-supports.c
    M clang/test/Sema/builtins-microsoft-arm64.c
    M clang/test/Sema/builtins.c
    M clang/test/Sema/c2x-typeof.c
    M clang/test/Sema/complex-inc-dec.c
    M clang/test/Sema/constant-builtins-2.c
    M clang/test/Sema/integer-overflow.c
    M clang/test/Sema/no-warn-missing-prototype.c
    M clang/test/Sema/patchable-function-entry-attr.cpp
    M clang/test/Sema/preserve-none-call-conv.c
    A clang/test/Sema/ptrauth-indirect-goto.c
    M clang/test/Sema/ptrauth-intrinsics-macro.c
    M clang/test/Sema/riscv-types.c
    A clang/test/Sema/shift-count-negative.c
    A clang/test/Sema/shift-count-overflow.c
    A clang/test/Sema/shift-negative-value.c
    M clang/test/Sema/switch.c
    M clang/test/Sema/tls_alignment.cpp
    A clang/test/Sema/undefined-internal-basic.c
    A clang/test/Sema/undefined-internal-typeof-c23.c
    M clang/test/Sema/vla-2.c
    M clang/test/Sema/warn-infinity-nan-disabled-lnx.cpp
    M clang/test/Sema/warn-infinity-nan-disabled-win.cpp
    M clang/test/Sema/warn-lifetime-analysis-nocfg-disabled.cpp
    M clang/test/Sema/warn-lifetime-analysis-nocfg.cpp
    M clang/test/Sema/warn-thread-safety-analysis.c
    M clang/test/Sema/x86-builtin-palignr.c
    A clang/test/SemaCUDA/amdgpu-builtins-pointer-args.cu
    A clang/test/SemaCUDA/attr-noconvergent.cu
    M clang/test/SemaCUDA/device-use-host-var.cu
    A clang/test/SemaCXX/GH82167.cpp
    M clang/test/SemaCXX/atomic-ops.cpp
    M clang/test/SemaCXX/attr-lifetimebound.cpp
    M clang/test/SemaCXX/attr-weak.cpp
    M clang/test/SemaCXX/builtin_vectorelements.cpp
    M clang/test/SemaCXX/class.cpp
    M clang/test/SemaCXX/constant-expression-cxx11.cpp
    M clang/test/SemaCXX/constant-expression-cxx2b.cpp
    M clang/test/SemaCXX/constexpr-subobj-initialization.cpp
    M clang/test/SemaCXX/coroutine-vla.cpp
    M clang/test/SemaCXX/cxx-deprecated.cpp
    M clang/test/SemaCXX/cxx0x-initializer-stdinitializerlist.cpp
    M clang/test/SemaCXX/cxx0x-noexcept-expression.cpp
    M clang/test/SemaCXX/cxx1y-variable-templates_in_class.cpp
    M clang/test/SemaCXX/cxx1z-class-template-argument-deduction.cpp
    M clang/test/SemaCXX/cxx1z-decomposition.cpp
    M clang/test/SemaCXX/cxx20-ctad-type-alias.cpp
    M clang/test/SemaCXX/cxx23-invalid-constexpr.cpp
    M clang/test/SemaCXX/cxx2a-consteval.cpp
    M clang/test/SemaCXX/cxx2a-destroying-delete.cpp
    M clang/test/SemaCXX/cxx2a-explicit-bool.cpp
    M clang/test/SemaCXX/cxx2b-deducing-this.cpp
    A clang/test/SemaCXX/cxx2c-fold-exprs.cpp
    M clang/test/SemaCXX/decltype.cpp
    M clang/test/SemaCXX/delete.cpp
    M clang/test/SemaCXX/destructor.cpp
    M clang/test/SemaCXX/enum.cpp
    M clang/test/SemaCXX/eval-crashes.cpp
    M clang/test/SemaCXX/gh65522.cpp
    A clang/test/SemaCXX/instantiate-template-broken-nontype-default.cpp
    M clang/test/SemaCXX/invalid-deduction-guide-as-template-candidates.cpp
    A clang/test/SemaCXX/invalid-template-declaration.cpp
    A clang/test/SemaCXX/lambda-call.cpp
    M clang/test/SemaCXX/lambda-expressions.cpp
    M clang/test/SemaCXX/lambda-pack-expansion.cpp
    M clang/test/SemaCXX/lookup-template-name-extern-CXX.cpp
    M clang/test/SemaCXX/new-delete-0x.cpp
    M clang/test/SemaCXX/new-delete.cpp
    M clang/test/SemaCXX/paren-list-agg-init.cpp
    A clang/test/SemaCXX/pr100095.cpp
    A clang/test/SemaCXX/pr98102.cpp
    A clang/test/SemaCXX/ptrauth-incomplete-virtual-member-function-return-arg-type.cpp
    A clang/test/SemaCXX/ptrauth-type-discriminator.cpp
    M clang/test/SemaCXX/shift.cpp
    M clang/test/SemaCXX/type-traits.cpp
    A clang/test/SemaCXX/typeof.cpp
    R clang/test/SemaCXX/typeof_unqual.cpp
    A clang/test/SemaCXX/vtable_pointer_authentication_attribute.cpp
    M clang/test/SemaCXX/warn-dangling-local.cpp
    A clang/test/SemaCXX/warn-explicit-specialization-storage-class.cpp
    M clang/test/SemaCXX/warn-thread-safety-analysis.cpp
    M clang/test/SemaCXX/warn-thread-safety-parsing.cpp
    M clang/test/SemaCXX/warn-unused-variables.cpp
    M clang/test/SemaHLSL/Availability/avail-diag-default-lib.hlsl
    M clang/test/SemaHLSL/Availability/avail-diag-relaxed-lib.hlsl
    M clang/test/SemaHLSL/Availability/avail-diag-strict-lib.hlsl
    M clang/test/SemaHLSL/BuiltIns/RWBuffers.hlsl
    A clang/test/SemaHLSL/BuiltIns/all-errors.hlsl
    M clang/test/SemaHLSL/BuiltIns/any-errors.hlsl
    A clang/test/SemaHLSL/Loops/unroll.hlsl
    R clang/test/SemaHLSL/OverloadResolutionBugs.hlsl
    M clang/test/SemaHLSL/ScalarOverloadResolution.hlsl
    M clang/test/SemaHLSL/Semantics/invalid_entry_parameter.hlsl
    A clang/test/SemaHLSL/SplatOverloadResolution.hlsl
    A clang/test/SemaHLSL/TruncationOverloadResolution.hlsl
    M clang/test/SemaHLSL/Types/BuiltinVector/ScalarSwizzles.hlsl
    M clang/test/SemaHLSL/VectorElementOverloadResolution.hlsl
    M clang/test/SemaHLSL/VectorOverloadResolution.hlsl
    A clang/test/SemaHLSL/export.hlsl
    M clang/test/SemaHLSL/resource_binding_attr_error.hlsl
    M clang/test/SemaHLSL/standard_conversion_sequences.hlsl
    M clang/test/SemaOpenCL/builtins-amdgcn-error-wave32.cl
    A clang/test/SemaOpenCL/builtins-amdgcn-raw-buffer-load-error.cl
    M clang/test/SemaOpenCL/builtins-amdgcn-raw-buffer-store-error.cl
    M clang/test/SemaTemplate/aggregate-deduction-candidate.cpp
    A clang/test/SemaTemplate/alias-template-deprecated.cpp
    M clang/test/SemaTemplate/class-template-decl.cpp
    M clang/test/SemaTemplate/class-template-id.cpp
    M clang/test/SemaTemplate/concepts-lambda.cpp
    M clang/test/SemaTemplate/ctad.cpp
    M clang/test/SemaTemplate/deduction-crash.cpp
    M clang/test/SemaTemplate/deduction-guide.cpp
    M clang/test/SemaTemplate/generic-lambda.cpp
    M clang/test/SemaTemplate/instantiate-local-class.cpp
    M clang/test/SemaTemplate/instantiate-requires-expr.cpp
    M clang/test/SemaTemplate/nested-deduction-guides.cpp
    M clang/test/SemaTemplate/nested-implicit-deduction-guides.cpp
    M clang/test/SemaTemplate/nested-template.cpp
    M clang/test/SemaTemplate/temp_arg.cpp
    A clang/test/TableGen/attrs-parser-string-switches.td
    M clang/test/Tooling/clang-check-extra-arg.cpp
    M clang/test/lit.cfg.py
    M clang/test/lit.site.cfg.py.in
    M clang/tools/CMakeLists.txt
    M clang/tools/c-index-test/CMakeLists.txt
    M clang/tools/c-index-test/c-index-test.c
    M clang/tools/c-index-test/core_main.cpp
    M clang/tools/clang-check/ClangCheck.cpp
    M clang/tools/clang-fuzzer/dictionary/CMakeLists.txt
    M clang/tools/clang-linker-wrapper/CMakeLists.txt
    M clang/tools/clang-linker-wrapper/ClangLinkerWrapper.cpp
    M clang/tools/clang-linker-wrapper/LinkerWrapperOpts.td
    A clang/tools/clang-nvlink-wrapper/CMakeLists.txt
    A clang/tools/clang-nvlink-wrapper/ClangNVLinkWrapper.cpp
    A clang/tools/clang-nvlink-wrapper/NVLinkOpts.td
    M clang/tools/clang-repl/CMakeLists.txt
    M clang/tools/driver/CMakeLists.txt
    M clang/tools/driver/cc1_main.cpp
    M clang/tools/driver/cc1as_main.cpp
    M clang/tools/libclang/CIndex.cpp
    M clang/tools/libclang/CMakeLists.txt
    M clang/tools/libclang/CXCursor.cpp
    M clang/tools/libclang/CXIndexDataConsumer.cpp
    M clang/tools/libclang/libclang.map
    M clang/unittests/AST/ASTImporterTest.cpp
    M clang/unittests/AST/Interp/toAPValue.cpp
    M clang/unittests/AST/MatchVerifier.h
    M clang/unittests/AST/StructuralEquivalenceTest.cpp
    M clang/unittests/ASTMatchers/ASTMatchersNarrowingTest.cpp
    M clang/unittests/Analysis/FlowSensitive/DataflowEnvironmentTest.cpp
    M clang/unittests/Analysis/FlowSensitive/TestingSupport.cpp
    M clang/unittests/Analysis/FlowSensitive/TransferTest.cpp
    M clang/unittests/Analysis/FlowSensitive/TypeErasedDataflowAnalysisTest.cpp
    M clang/unittests/Format/ConfigParseTest.cpp
    M clang/unittests/Format/FormatTest.cpp
    M clang/unittests/Format/FormatTestComments.cpp
    M clang/unittests/Format/SortIncludesTest.cpp
    M clang/unittests/Format/TokenAnnotatorTest.cpp
    M clang/unittests/Frontend/CompilerInstanceTest.cpp
    M clang/unittests/Interpreter/InterpreterTest.cpp
    M clang/unittests/Lex/DependencyDirectivesScannerTest.cpp
    M clang/unittests/StaticAnalyzer/CMakeLists.txt
    M clang/unittests/StaticAnalyzer/CallEventTest.cpp
    A clang/unittests/StaticAnalyzer/ExprEngineVisitTest.cpp
    A clang/unittests/StaticAnalyzer/Z3CrosscheckOracleTest.cpp
    M clang/unittests/Support/TimeProfilerTest.cpp
    M clang/unittests/Tooling/CMakeLists.txt
    M clang/unittests/Tooling/LexicallyOrderedRecursiveASTVisitorTest.cpp
    M clang/unittests/Tooling/RangeSelectorTest.cpp
    M clang/unittests/Tooling/RecursiveASTVisitorTests/DeductionGuide.cpp
    M clang/unittests/Tooling/ReplacementsYamlTest.cpp
    M clang/unittests/Tooling/ToolingTest.cpp
    M clang/utils/TableGen/ClangAttrEmitter.cpp
    M clang/utils/TableGen/NeonEmitter.cpp
    M clang/utils/TableGen/RISCVVEmitter.cpp
    M clang/www/analyzer/alpha_checks.html
    M clang/www/analyzer/available_checks.html
    M clang/www/analyzer/codechecker.html
    M clang/www/analyzer/command-line.html
    M clang/www/analyzer/filing_bugs.html
    M clang/www/analyzer/index.html
    M clang/www/analyzer/installation.html
    R clang/www/analyzer/latest_checker.html.incl
    M clang/www/analyzer/scan-build.html
    M clang/www/analyzer/xcode.html
    M clang/www/builtins.py
    M clang/www/c_status.html
    M clang/www/cxx_dr_status.html
    M clang/www/cxx_status.html
    M clang/www/make_cxx_dr_status
    M cmake/Modules/CMakePolicy.cmake
    M cmake/Modules/LLVMCheckCompilerLinkerFlag.cmake
    M cmake/Modules/LLVMVersion.cmake
    M compiler-rt/CMakeLists.txt
    M compiler-rt/CODE_OWNERS.TXT
    M compiler-rt/cmake/Modules/AddCompilerRT.cmake
    M compiler-rt/cmake/Modules/AllSupportedArchDefs.cmake
    M compiler-rt/cmake/Modules/BuiltinTests.cmake
    M compiler-rt/cmake/Modules/CompilerRTUtils.cmake
    M compiler-rt/cmake/base-config-ix.cmake
    M compiler-rt/cmake/builtin-config-ix.cmake
    A compiler-rt/cmake/caches/GPU.cmake
    M compiler-rt/cmake/config-ix.cmake
    M compiler-rt/include/orc_rt/c_api.h
    M compiler-rt/include/profile/InstrProfData.inc
    M compiler-rt/include/profile/MIBEntryDef.inc
    M compiler-rt/include/profile/MemProfData.inc
    M compiler-rt/include/sanitizer/allocator_interface.h
    M compiler-rt/lib/CMakeLists.txt
    M compiler-rt/lib/asan/asan_allocator.cpp
    M compiler-rt/lib/asan/asan_descriptions.cpp
    M compiler-rt/lib/asan/asan_globals.cpp
    M compiler-rt/lib/asan/asan_globals_win.cpp
    M compiler-rt/lib/asan/asan_interceptors.cpp
    M compiler-rt/lib/asan/asan_malloc_linux.cpp
    M compiler-rt/lib/asan/asan_mapping.h
    M compiler-rt/lib/asan/asan_preinit.cpp
    M compiler-rt/lib/asan/asan_report.cpp
    M compiler-rt/lib/asan/asan_rtl.cpp
    M compiler-rt/lib/asan/asan_suppressions.cpp
    M compiler-rt/lib/asan/asan_thread.cpp
    M compiler-rt/lib/asan/tests/CMakeLists.txt
    M compiler-rt/lib/builtins/CMakeLists.txt
    M compiler-rt/lib/builtins/README.txt
    M compiler-rt/lib/builtins/aarch64/sme-abi-vg.c
    M compiler-rt/lib/builtins/aarch64/sme-abi.S
    A compiler-rt/lib/builtins/aarch64/sme-libc-mem-routines.S
    M compiler-rt/lib/builtins/aarch64/sme-libc-routines.c
    A compiler-rt/lib/builtins/cpu_model/AArch64CPUFeatures.inc
    M compiler-rt/lib/builtins/cpu_model/aarch64.h
    A compiler-rt/lib/builtins/cpu_model/riscv.c
    M compiler-rt/lib/builtins/cpu_model/x86.c
    M compiler-rt/lib/builtins/fp_extend.h
    M compiler-rt/lib/builtins/fp_lib.h
    M compiler-rt/lib/builtins/os_version_check.c
    M compiler-rt/lib/builtins/riscv/restore.S
    M compiler-rt/lib/builtins/riscv/save.S
    M compiler-rt/lib/builtins/trampoline_setup.c
    M compiler-rt/lib/dfsan/dfsan_allocator.h
    M compiler-rt/lib/fuzzer/FuzzerFork.cpp
    M compiler-rt/lib/gwp_asan/CMakeLists.txt
    M compiler-rt/lib/gwp_asan/definitions.h
    M compiler-rt/lib/gwp_asan/platform_specific/guarded_pool_allocator_fuchsia.cpp
    M compiler-rt/lib/gwp_asan/platform_specific/guarded_pool_allocator_posix.cpp
    M compiler-rt/lib/gwp_asan/platform_specific/utilities_fuchsia.cpp
    M compiler-rt/lib/gwp_asan/platform_specific/utilities_posix.cpp
    M compiler-rt/lib/gwp_asan/tests/CMakeLists.txt
    A compiler-rt/lib/gwp_asan/tests/utilities.cpp
    M compiler-rt/lib/gwp_asan/utilities.h
    M compiler-rt/lib/hwasan/hwasan_allocator.cpp
    M compiler-rt/lib/hwasan/hwasan_linux.cpp
    M compiler-rt/lib/hwasan/hwasan_preinit.cpp
    M compiler-rt/lib/hwasan/hwasan_report.cpp
    M compiler-rt/lib/hwasan/hwasan_thread_list.cpp
    M compiler-rt/lib/interception/interception_linux.h
    M compiler-rt/lib/lsan/CMakeLists.txt
    M compiler-rt/lib/lsan/lsan_common.cpp
    M compiler-rt/lib/lsan/lsan_common_linux.cpp
    M compiler-rt/lib/lsan/lsan_interceptors.cpp
    M compiler-rt/lib/lsan/lsan_preinit.cpp
    M compiler-rt/lib/lsan/lsan_thread.cpp
    M compiler-rt/lib/memprof/memprof_allocator.cpp
    M compiler-rt/lib/memprof/memprof_allocator.h
    M compiler-rt/lib/memprof/memprof_flags.inc
    M compiler-rt/lib/memprof/memprof_mapping.h
    M compiler-rt/lib/memprof/memprof_mibmap.cpp
    M compiler-rt/lib/memprof/memprof_preinit.cpp
    M compiler-rt/lib/memprof/memprof_rawprofile.cpp
    M compiler-rt/lib/memprof/memprof_rtl.cpp
    M compiler-rt/lib/memprof/memprof_thread.cpp
    M compiler-rt/lib/memprof/tests/rawprofile.cpp
    M compiler-rt/lib/msan/msan.cpp
    M compiler-rt/lib/msan/msan_allocator.h
    M compiler-rt/lib/msan/msan_interceptors.cpp
    M compiler-rt/lib/msan/msan_linux.cpp
    M compiler-rt/lib/msan/msan_thread.cpp
    M compiler-rt/lib/nsan/CMakeLists.txt
    M compiler-rt/lib/nsan/nsan.cpp
    M compiler-rt/lib/nsan/nsan.h
    M compiler-rt/lib/nsan/nsan.syms.extra
    M compiler-rt/lib/nsan/nsan_interceptors.cpp
    A compiler-rt/lib/nsan/nsan_malloc_linux.cpp
    A compiler-rt/lib/nsan/nsan_preinit.cpp
    M compiler-rt/lib/nsan/tests/CMakeLists.txt
    M compiler-rt/lib/orc/error.h
    M compiler-rt/lib/profile/InstrProfiling.h
    M compiler-rt/lib/profile/InstrProfilingFile.c
    A compiler-rt/lib/rtsan/CMakeLists.txt
    A compiler-rt/lib/rtsan/rtsan.cpp
    A compiler-rt/lib/rtsan/rtsan.h
    A compiler-rt/lib/rtsan/rtsan_context.cpp
    A compiler-rt/lib/rtsan/rtsan_context.h
    A compiler-rt/lib/rtsan/rtsan_interceptors.cpp
    A compiler-rt/lib/rtsan/rtsan_interceptors.h
    A compiler-rt/lib/rtsan/rtsan_preinit.cpp
    A compiler-rt/lib/rtsan/rtsan_stack.cpp
    A compiler-rt/lib/rtsan/rtsan_stack.h
    A compiler-rt/lib/rtsan/tests/CMakeLists.txt
    A compiler-rt/lib/rtsan/tests/rtsan_test_context.cpp
    A compiler-rt/lib/rtsan/tests/rtsan_test_functional.cpp
    A compiler-rt/lib/rtsan/tests/rtsan_test_interceptors.cpp
    A compiler-rt/lib/rtsan/tests/rtsan_test_main.cpp
    A compiler-rt/lib/rtsan/tests/rtsan_test_utilities.h
    M compiler-rt/lib/safestack/CMakeLists.txt
    M compiler-rt/lib/safestack/safestack.cpp
    M compiler-rt/lib/safestack/safestack_platform.h
    M compiler-rt/lib/safestack/safestack_util.h
    M compiler-rt/lib/sanitizer_common/sancov_flags.cpp
    M compiler-rt/lib/sanitizer_common/sanitizer_allocator.cpp
    M compiler-rt/lib/sanitizer_common/sanitizer_allocator_interface.h
    M compiler-rt/lib/sanitizer_common/sanitizer_allocator_primary32.h
    M compiler-rt/lib/sanitizer_common/sanitizer_allocator_primary64.h
    M compiler-rt/lib/sanitizer_common/sanitizer_atomic.h
    M compiler-rt/lib/sanitizer_common/sanitizer_common.cpp
    M compiler-rt/lib/sanitizer_common/sanitizer_common.h
    M compiler-rt/lib/sanitizer_common/sanitizer_common_interceptors.inc
    M compiler-rt/lib/sanitizer_common/sanitizer_common_interface.inc
    M compiler-rt/lib/sanitizer_common/sanitizer_common_libcdep.cpp
    M compiler-rt/lib/sanitizer_common/sanitizer_coverage_libcdep_new.cpp
    M compiler-rt/lib/sanitizer_common/sanitizer_file.cpp
    M compiler-rt/lib/sanitizer_common/sanitizer_libignore.cpp
    M compiler-rt/lib/sanitizer_common/sanitizer_linux.cpp
    M compiler-rt/lib/sanitizer_common/sanitizer_linux_libcdep.cpp
    M compiler-rt/lib/sanitizer_common/sanitizer_mac.cpp
    M compiler-rt/lib/sanitizer_common/sanitizer_platform.h
    M compiler-rt/lib/sanitizer_common/sanitizer_platform_interceptors.h
    M compiler-rt/lib/sanitizer_common/sanitizer_posix.cpp
    M compiler-rt/lib/sanitizer_common/sanitizer_posix_libcdep.cpp
    M compiler-rt/lib/sanitizer_common/sanitizer_procmaps_bsd.cpp
    M compiler-rt/lib/sanitizer_common/sanitizer_ptrauth.h
    M compiler-rt/lib/sanitizer_common/sanitizer_stacktrace_printer.cpp
    M compiler-rt/lib/sanitizer_common/sanitizer_stoptheworld_linux_libcdep.cpp
    M compiler-rt/lib/sanitizer_common/sanitizer_stoptheworld_netbsd_libcdep.cpp
    M compiler-rt/lib/sanitizer_common/sanitizer_tls_get_addr.cpp
    M compiler-rt/lib/sanitizer_common/sanitizer_win.cpp
    M compiler-rt/lib/sanitizer_common/symbolizer/scripts/global_symbols.txt
    M compiler-rt/lib/sanitizer_common/tests/sanitizer_allocator_test.cpp
    M compiler-rt/lib/sanitizer_common/tests/sanitizer_ioctl_test.cpp
    M compiler-rt/lib/sanitizer_common/tests/sanitizer_stackdepot_test.cpp
    M compiler-rt/lib/sanitizer_common/tests/sanitizer_stacktrace_printer_test.cpp
    M compiler-rt/lib/sanitizer_common/tests/sanitizer_stacktrace_test.cpp
    M compiler-rt/lib/scudo/standalone/CMakeLists.txt
    M compiler-rt/lib/scudo/standalone/allocator_config.def
    M compiler-rt/lib/scudo/standalone/mem_map_fuchsia.cpp
    M compiler-rt/lib/scudo/standalone/secondary.h
    M compiler-rt/lib/scudo/standalone/string_utils.h
    M compiler-rt/lib/scudo/standalone/tests/CMakeLists.txt
    M compiler-rt/lib/scudo/standalone/tests/secondary_test.cpp
    M compiler-rt/lib/scudo/standalone/tests/timing_test.cpp
    M compiler-rt/lib/scudo/standalone/tests/vector_test.cpp
    M compiler-rt/lib/scudo/standalone/timing.h
    M compiler-rt/lib/scudo/standalone/vector.h
    M compiler-rt/lib/tsan/rtl/tsan_defs.h
    M compiler-rt/lib/tsan/rtl/tsan_interceptors_posix.cpp
    M compiler-rt/lib/tsan/rtl/tsan_interface_ann.cpp
    M compiler-rt/lib/tsan/rtl/tsan_mman.cpp
    M compiler-rt/lib/tsan/rtl/tsan_platform_linux.cpp
    M compiler-rt/lib/tsan/rtl/tsan_platform_mac.cpp
    M compiler-rt/lib/tsan/rtl/tsan_preinit.cpp
    M compiler-rt/lib/tsan/rtl/tsan_rtl.cpp
    M compiler-rt/lib/tsan/rtl/tsan_rtl.h
    M compiler-rt/lib/tsan/rtl/tsan_rtl_aarch64.S
    M compiler-rt/lib/tsan/rtl/tsan_rtl_access.cpp
    M compiler-rt/lib/tsan/rtl/tsan_suppressions.cpp
    M compiler-rt/lib/tsan/rtl/tsan_vector_clock.h
    M compiler-rt/lib/ubsan/ubsan_diag.cpp
    M compiler-rt/lib/ubsan/ubsan_init_standalone_preinit.cpp
    M compiler-rt/lib/ubsan/ubsan_type_hash_itanium.cpp
    M compiler-rt/lib/ubsan_minimal/CMakeLists.txt
    M compiler-rt/test/CMakeLists.txt
    M compiler-rt/test/asan/CMakeLists.txt
    M compiler-rt/test/asan/TestCases/Darwin/init_for_dlopen.cpp
    A compiler-rt/test/asan/TestCases/Linux/odr_indicator_unregister.cpp
    A compiler-rt/test/asan/TestCases/Posix/ignore_free_hook.cpp
    M compiler-rt/test/asan/TestCases/debug_mapping.cpp
    M compiler-rt/test/asan/TestCases/debug_stacks.cpp
    M compiler-rt/test/asan/TestCases/printf-5.c
    M compiler-rt/test/asan/Unit/lit.site.cfg.py.in
    M compiler-rt/test/builtins/TestCases/Darwin/platform_version_check_test.c
    A compiler-rt/test/builtins/TestCases/check-same-common-code.test
    R compiler-rt/test/builtins/Unit/ppc/test
    R compiler-rt/test/builtins/Unit/test
    M compiler-rt/test/builtins/Unit/trampoline_setup_test.c
    M compiler-rt/test/builtins/lit.cfg.py
    M compiler-rt/test/cfi/CMakeLists.txt
    M compiler-rt/test/ctx_profile/CMakeLists.txt
    M compiler-rt/test/fuzzer/CMakeLists.txt
    M compiler-rt/test/fuzzer/fuzzer-finalstats.test
    M compiler-rt/test/fuzzer/fuzzer-leak.test
    M compiler-rt/test/fuzzer/lit.cfg.py
    M compiler-rt/test/gwp_asan/CMakeLists.txt
    M compiler-rt/test/hwasan/TestCases/Linux/fixed-shadow.c
    A compiler-rt/test/hwasan/TestCases/Posix/ignore_free_hook.cpp
    M compiler-rt/test/interception/CMakeLists.txt
    M compiler-rt/test/lit.common.cfg.py
    M compiler-rt/test/memprof/CMakeLists.txt
    M compiler-rt/test/metadata/common.h
    M compiler-rt/test/msan/CMakeLists.txt
    A compiler-rt/test/msan/Linux/prctl.cpp
    M compiler-rt/test/msan/Linux/sigandorset.cpp
    M compiler-rt/test/nsan/CMakeLists.txt
    A compiler-rt/test/nsan/alloca.cpp
    A compiler-rt/test/nsan/helpers.h
    M compiler-rt/test/nsan/lit.cfg.py
    M compiler-rt/test/nsan/lit.site.cfg.py.in
    A compiler-rt/test/nsan/sum.cpp
    M compiler-rt/test/orc/CMakeLists.txt
    M compiler-rt/test/profile/ContinuousSyncMode/darwin-proof-of-concept.c
    M compiler-rt/test/profile/Linux/instrprof-vtable-value-prof.cpp
    A compiler-rt/test/profile/check-same-common-code.test
    M compiler-rt/test/profile/instrprof-gc-sections.c
    A compiler-rt/test/rtsan/CMakeLists.txt
    A compiler-rt/test/rtsan/Unit/lit.site.cfg.py.in
    A compiler-rt/test/rtsan/lit.cfg.py
    A compiler-rt/test/rtsan/lit.site.cfg.py.in
    M compiler-rt/test/safestack/CMakeLists.txt
    M compiler-rt/test/safestack/lit.cfg.py
    M compiler-rt/test/safestack/lit.site.cfg.py.in
    M compiler-rt/test/sanitizer_common/CMakeLists.txt
    A compiler-rt/test/sanitizer_common/TestCases/FreeBSD/dump_registers_i386.cpp
    A compiler-rt/test/sanitizer_common/TestCases/FreeBSD/dump_registers_x86_64.cpp
    A compiler-rt/test/sanitizer_common/TestCases/Linux/dump_registers_aarch64.cpp
    A compiler-rt/test/sanitizer_common/TestCases/Linux/dump_registers_arm.cpp
    A compiler-rt/test/sanitizer_common/TestCases/Linux/dump_registers_i386.cpp
    A compiler-rt/test/sanitizer_common/TestCases/Linux/dump_registers_x86_64.cpp
    M compiler-rt/test/sanitizer_common/TestCases/Linux/prctl.cpp
    A compiler-rt/test/sanitizer_common/TestCases/Linux/preadv2.cpp
    M compiler-rt/test/sanitizer_common/TestCases/Linux/signal_line.cpp
    M compiler-rt/test/sanitizer_common/TestCases/Linux/signal_send.cpp
    A compiler-rt/test/sanitizer_common/TestCases/NetBSD/dump_registers_i386.cpp
    A compiler-rt/test/sanitizer_common/TestCases/NetBSD/dump_registers_x86_64.cpp
    R compiler-rt/test/sanitizer_common/TestCases/Posix/sanitizer_bad_report_path_test.cpp
    M compiler-rt/test/sanitizer_common/TestCases/Posix/sanitizer_set_report_path_test.cpp
    M compiler-rt/test/scudo/standalone/CMakeLists.txt
    M compiler-rt/test/tsan/CMakeLists.txt
    M compiler-rt/test/tsan/Darwin/fork_deadlock.cpp
    M compiler-rt/test/tsan/Linux/check_preinit.cpp
    M compiler-rt/test/tsan/debug_alloc_stack.cpp
    M compiler-rt/test/xray/CMakeLists.txt
    M compiler-rt/www/index.html
    M cross-project-tests/lit.cfg.py
    M flang/CMakeLists.txt
    M flang/cmake/modules/AddFlang.cmake
    M flang/docs/Extensions.md
    M flang/docs/GettingInvolved.md
    M flang/docs/InternalProcedureTrampolines.md
    M flang/docs/Intrinsics.md
    M flang/include/flang/Common/Fortran-features.h
    M flang/include/flang/Evaluate/tools.h
    M flang/include/flang/Evaluate/type.h
    M flang/include/flang/Frontend/CodeGenOptions.h
    M flang/include/flang/Frontend/CompilerInvocation.h
    M flang/include/flang/ISO_Fortran_binding.h
    M flang/include/flang/Lower/BoxAnalyzer.h
    M flang/include/flang/Lower/ConvertVariable.h
    M flang/include/flang/Optimizer/Builder/FIRBuilder.h
    M flang/include/flang/Optimizer/Builder/IntrinsicCall.h
    M flang/include/flang/Optimizer/Builder/Runtime/Exceptions.h
    M flang/include/flang/Optimizer/Builder/Runtime/Intrinsics.h
    M flang/include/flang/Optimizer/CodeGen/CGOps.td
    M flang/include/flang/Optimizer/CodeGen/FIROpPatterns.h
    M flang/include/flang/Optimizer/CodeGen/TBAABuilder.h
    M flang/include/flang/Optimizer/CodeGen/TypeConverter.h
    M flang/include/flang/Optimizer/Dialect/CUF/CUFOps.td
    M flang/include/flang/Optimizer/Dialect/FIRAttr.td
    M flang/include/flang/Optimizer/Dialect/FIROps.td
    M flang/include/flang/Optimizer/Dialect/FirAliasTagOpInterface.h
    M flang/include/flang/Optimizer/Dialect/FortranVariableInterface.td
    M flang/include/flang/Optimizer/Dialect/Support/KindMapping.h
    M flang/include/flang/Optimizer/HLFIR/HLFIROps.td
    M flang/include/flang/Optimizer/Support/InternalNames.h
    M flang/include/flang/Optimizer/Support/Utils.h
    A flang/include/flang/Optimizer/Transforms/MemoryUtils.h
    M flang/include/flang/Optimizer/Transforms/Passes.td
    M flang/include/flang/Parser/provenance.h
    A flang/include/flang/Runtime/allocator-registry.h
    M flang/include/flang/Runtime/descriptor.h
    M flang/include/flang/Runtime/exceptions.h
    M flang/include/flang/Runtime/magic-numbers.h
    A flang/include/flang/Runtime/matmul-instances.inc
    M flang/include/flang/Runtime/matmul-transpose.h
    M flang/include/flang/Runtime/matmul.h
    M flang/include/flang/Runtime/misc-intrinsic.h
    M flang/include/flang/Semantics/semantics.h
    M flang/include/flang/Semantics/symbol.h
    M flang/include/flang/Semantics/tools.h
    M flang/include/flang/Semantics/type.h
    M flang/include/flang/Tools/CLOptions.inc
    M flang/lib/Evaluate/fold-character.cpp
    M flang/lib/Evaluate/fold-implementation.h
    M flang/lib/Evaluate/fold-integer.cpp
    M flang/lib/Evaluate/fold-real.cpp
    M flang/lib/Evaluate/intrinsics-library.cpp
    M flang/lib/Evaluate/intrinsics.cpp
    M flang/lib/Evaluate/real.cpp
    M flang/lib/Evaluate/tools.cpp
    M flang/lib/Evaluate/type.cpp
    M flang/lib/Evaluate/variable.cpp
    M flang/lib/Frontend/CodeGenOptions.cpp
    M flang/lib/Frontend/CompilerInstance.cpp
    M flang/lib/Frontend/CompilerInvocation.cpp
    M flang/lib/Frontend/FrontendAction.cpp
    M flang/lib/Frontend/FrontendActions.cpp
    M flang/lib/Lower/Allocatable.cpp
    M flang/lib/Lower/Bridge.cpp
    M flang/lib/Lower/ConvertCall.cpp
    M flang/lib/Lower/ConvertProcedureDesignator.cpp
    M flang/lib/Lower/ConvertVariable.cpp
    M flang/lib/Lower/DirectivesCommon.h
    M flang/lib/Lower/OpenACC.cpp
    M flang/lib/Lower/OpenMP/ClauseProcessor.cpp
    M flang/lib/Lower/OpenMP/ClauseProcessor.h
    M flang/lib/Lower/OpenMP/DataSharingProcessor.cpp
    M flang/lib/Lower/OpenMP/DataSharingProcessor.h
    M flang/lib/Lower/OpenMP/OpenMP.cpp
    M flang/lib/Optimizer/Builder/FIRBuilder.cpp
    M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
    M flang/lib/Optimizer/Builder/Runtime/Exceptions.cpp
    M flang/lib/Optimizer/Builder/Runtime/Intrinsics.cpp
    M flang/lib/Optimizer/Builder/Runtime/Numeric.cpp
    M flang/lib/Optimizer/Builder/Runtime/Transformational.cpp
    M flang/lib/Optimizer/Builder/TemporaryStorage.cpp
    M flang/lib/Optimizer/CodeGen/CodeGen.cpp
    M flang/lib/Optimizer/CodeGen/CodeGenOpenMP.cpp
    M flang/lib/Optimizer/CodeGen/PreCGRewrite.cpp
    M flang/lib/Optimizer/CodeGen/TargetRewrite.cpp
    M flang/lib/Optimizer/CodeGen/TypeConverter.cpp
    M flang/lib/Optimizer/Dialect/CUF/CUFOps.cpp
    M flang/lib/Optimizer/Dialect/FIRAttr.cpp
    M flang/lib/Optimizer/Dialect/FIROps.cpp
    M flang/lib/Optimizer/Dialect/FIRType.cpp
    M flang/lib/Optimizer/Dialect/FirAliasTagOpInterface.cpp
    M flang/lib/Optimizer/Dialect/FortranVariableInterface.cpp
    M flang/lib/Optimizer/Dialect/Support/KindMapping.cpp
    M flang/lib/Optimizer/HLFIR/IR/HLFIROps.cpp
    M flang/lib/Optimizer/HLFIR/Transforms/BufferizeHLFIR.cpp
    M flang/lib/Optimizer/HLFIR/Transforms/ConvertToFIR.cpp
    M flang/lib/Optimizer/HLFIR/Transforms/InlineElementals.cpp
    M flang/lib/Optimizer/HLFIR/Transforms/LowerHLFIRIntrinsics.cpp
    M flang/lib/Optimizer/HLFIR/Transforms/LowerHLFIROrderedAssignments.cpp
    M flang/lib/Optimizer/HLFIR/Transforms/OptimizedBufferization.cpp
    M flang/lib/Optimizer/HLFIR/Transforms/SimplifyHLFIRIntrinsics.cpp
    M flang/lib/Optimizer/Support/CMakeLists.txt
    M flang/lib/Optimizer/Support/InternalNames.cpp
    A flang/lib/Optimizer/Support/Utils.cpp
    M flang/lib/Optimizer/Transforms/AbstractResult.cpp
    M flang/lib/Optimizer/Transforms/AddDebugInfo.cpp
    M flang/lib/Optimizer/Transforms/AffineDemotion.cpp
    M flang/lib/Optimizer/Transforms/AffinePromotion.cpp
    M flang/lib/Optimizer/Transforms/ArrayValueCopy.cpp
    M flang/lib/Optimizer/Transforms/AssumedRankOpConversion.cpp
    M flang/lib/Optimizer/Transforms/CMakeLists.txt
    M flang/lib/Optimizer/Transforms/CharacterConversion.cpp
    M flang/lib/Optimizer/Transforms/ConstantArgumentGlobalisation.cpp
    M flang/lib/Optimizer/Transforms/ControlFlowConverter.cpp
    M flang/lib/Optimizer/Transforms/DebugTypeGenerator.cpp
    M flang/lib/Optimizer/Transforms/MemoryAllocation.cpp
    A flang/lib/Optimizer/Transforms/MemoryUtils.cpp
    M flang/lib/Optimizer/Transforms/OMPMapInfoFinalization.cpp
    M flang/lib/Optimizer/Transforms/PolymorphicOpConversion.cpp
    M flang/lib/Optimizer/Transforms/StackArrays.cpp
    M flang/lib/Optimizer/Transforms/StackReclaim.cpp
    M flang/lib/Parser/Fortran-parsers.cpp
    M flang/lib/Parser/executable-parsers.cpp
    M flang/lib/Parser/openmp-parsers.cpp
    M flang/lib/Parser/preprocessor.cpp
    M flang/lib/Parser/prescan.cpp
    M flang/lib/Parser/prescan.h
    M flang/lib/Parser/program-parsers.cpp
    M flang/lib/Parser/provenance.cpp
    M flang/lib/Parser/stmt-parser.h
    M flang/lib/Parser/token-sequence.cpp
    M flang/lib/Semantics/assignment.cpp
    M flang/lib/Semantics/check-allocate.cpp
    M flang/lib/Semantics/check-call.cpp
    M flang/lib/Semantics/check-cuda.cpp
    M flang/lib/Semantics/check-deallocate.cpp
    M flang/lib/Semantics/check-declarations.cpp
    M flang/lib/Semantics/check-do-forall.cpp
    M flang/lib/Semantics/check-io.cpp
    M flang/lib/Semantics/check-nullify.cpp
    M flang/lib/Semantics/check-omp-structure.cpp
    M flang/lib/Semantics/check-omp-structure.h
    M flang/lib/Semantics/check-purity.cpp
    M flang/lib/Semantics/definable.cpp
    M flang/lib/Semantics/definable.h
    M flang/lib/Semantics/expression.cpp
    M flang/lib/Semantics/mod-file.cpp
    M flang/lib/Semantics/mod-file.h
    M flang/lib/Semantics/pointer-assignment.cpp
    M flang/lib/Semantics/resolve-directives.cpp
    M flang/lib/Semantics/resolve-names.cpp
    M flang/lib/Semantics/runtime-type-info.cpp
    M flang/lib/Semantics/semantics.cpp
    M flang/lib/Semantics/symbol.cpp
    M flang/lib/Semantics/tools.cpp
    M flang/lib/Semantics/type.cpp
    M flang/module/iso_fortran_env.f90
    A flang/module/iso_fortran_env_impl.f90
    M flang/runtime/CMakeLists.txt
    M flang/runtime/ISO_Fortran_util.h
    A flang/runtime/allocator-registry.cpp
    M flang/runtime/command.cpp
    M flang/runtime/copy.cpp
    M flang/runtime/copy.h
    M flang/runtime/derived.cpp
    M flang/runtime/descriptor.cpp
    M flang/runtime/exceptions.cpp
    M flang/runtime/execute.cpp
    M flang/runtime/matmul-transpose.cpp
    M flang/runtime/matmul.cpp
    M flang/runtime/misc-intrinsic.cpp
    M flang/runtime/pointer.cpp
    A flang/runtime/stack.h
    M flang/runtime/time-intrinsic.cpp
    M flang/runtime/transformational.cpp
    M flang/runtime/unit.cpp
    A flang/test/Driver/Inputs/config-1.cfg
    A flang/test/Driver/Inputs/config-2.cfg
    A flang/test/Driver/Inputs/config-2a.cfg
    A flang/test/Driver/Inputs/config-6.cfg
    A flang/test/Driver/Inputs/config/config-4.cfg
    A flang/test/Driver/Inputs/config2/config-4.cfg
    A flang/test/Driver/config-file.f90
    A flang/test/Driver/large-data-threshold.f90
    M flang/test/Driver/linker-flags.f90
    A flang/test/Driver/mcmodel.f90
    M flang/test/Driver/omp-driver-offload.f90
    A flang/test/Driver/print-resource-dir.F90
    M flang/test/Driver/target-cpu-features.f90
    M flang/test/Driver/target-gpu-features.f90
    M flang/test/Driver/tune-cpu-fir.f90
    A flang/test/Evaluate/fold-assumed-type-rank.f90
    M flang/test/Evaluate/fold-nearest.f90
    M flang/test/Evaluate/folding04.f90
    M flang/test/Evaluate/folding08.f90
    A flang/test/Evaluate/rewrite08.f90
    M flang/test/Fir/abstract-results.fir
    M flang/test/Fir/basic-program.fir
    M flang/test/Fir/box.fir
    M flang/test/Fir/convert-to-llvm-openmp-and-fir.fir
    M flang/test/Fir/convert-to-llvm.fir
    M flang/test/Fir/cuf-invalid.fir
    M flang/test/Fir/declare-codegen.fir
    M flang/test/Fir/embox-char.fir
    M flang/test/Fir/embox.fir
    M flang/test/Fir/fir-ops.fir
    M flang/test/Fir/ignore-missing-type-descriptor.fir
    A flang/test/Fir/memory-allocation-opt-2.fir
    M flang/test/Fir/polymorphic.fir
    M flang/test/Fir/rebox-global.fir
    M flang/test/Fir/rebox.fir
    M flang/test/Fir/tbaa.fir
    M flang/test/Fir/type-descriptor.fir
    M flang/test/HLFIR/matmul-lowering.fir
    M flang/test/HLFIR/mul_transpose.f90
    M flang/test/Integration/debug-assumed-shape-array.f90
    A flang/test/Integration/debug-assumed-size-array-2.f90
    A flang/test/Integration/debug-assumed-size-array.f90
    M flang/test/Integration/debug-fixed-array-type-2.f90
    M flang/test/Lower/CUDA/cuda-allocatable.cuf
    M flang/test/Lower/CUDA/cuda-data-transfer.cuf
    M flang/test/Lower/CUDA/cuda-kernel-loop-directive.cuf
    M flang/test/Lower/HLFIR/array-ctor-character.f90
    A flang/test/Lower/HLFIR/calls-poly-to-nonpoly.f90
    M flang/test/Lower/HLFIR/procedure-pointer.f90
    A flang/test/Lower/HLFIR/type-info-components.f90
    A flang/test/Lower/Intrinsics/atan.f90
    M flang/test/Lower/Intrinsics/atan_real16.f90
    M flang/test/Lower/Intrinsics/get_environment_variable.f90
    A flang/test/Lower/Intrinsics/ieee_next.f90
    M flang/test/Lower/Intrinsics/matmul.f90
    M flang/test/Lower/Intrinsics/nearest.f90
    A flang/test/Lower/Intrinsics/rename.f90
    A flang/test/Lower/Intrinsics/second.f90
    M flang/test/Lower/OpenACC/acc-data.f90
    M flang/test/Lower/OpenACC/acc-enter-data.f90
    M flang/test/Lower/OpenACC/acc-exit-data.f90
    M flang/test/Lower/OpenACC/acc-loop.f90
    M flang/test/Lower/OpenACC/acc-parallel.f90
    M flang/test/Lower/OpenACC/acc-serial.f90
    M flang/test/Lower/OpenACC/acc-update.f90
    A flang/test/Lower/OpenMP/DelayedPrivatization/equivalence.f90
    A flang/test/Lower/OpenMP/Todo/atomic-character.f90
    A flang/test/Lower/OpenMP/Todo/atomic-complex.f90
    R flang/test/Lower/OpenMP/Todo/masked-directive.f90
    R flang/test/Lower/OpenMP/Todo/omp-do-simd-aligned.f90
    M flang/test/Lower/OpenMP/Todo/omp-do-simd-linear.f90
    R flang/test/Lower/OpenMP/Todo/omp-do-simd-safelen.f90
    R flang/test/Lower/OpenMP/Todo/omp-do-simd-simdlen.f90
    A flang/test/Lower/OpenMP/associate.f90
    M flang/test/Lower/OpenMP/atomic-capture.f90
    M flang/test/Lower/OpenMP/atomic-read.f90
    M flang/test/Lower/OpenMP/copyin-order.f90
    A flang/test/Lower/OpenMP/declare-target-unnamed-main.f90
    M flang/test/Lower/OpenMP/default-clause-implied-do-fix.f90
    A flang/test/Lower/OpenMP/distribute-simd.f90
    A flang/test/Lower/OpenMP/firstprivate-allocatable.f90
    M flang/test/Lower/OpenMP/firstprivate-commonblock.f90
    M flang/test/Lower/OpenMP/if-clause.f90
    A flang/test/Lower/OpenMP/lastprivate-allocatable.f90
    M flang/test/Lower/OpenMP/loop-compound.f90
    A flang/test/Lower/OpenMP/masked.f90
    A flang/test/Lower/OpenMP/order-clause.f90
    M flang/test/Lower/OpenMP/parallel-reduction3.f90
    A flang/test/Lower/OpenMP/parallel-wsloop-lastpriv.f90
    M flang/test/Lower/OpenMP/parallel-wsloop.f90
    M flang/test/Lower/OpenMP/parallel.f90
    M flang/test/Lower/OpenMP/private-commonblock.f90
    A flang/test/Lower/OpenMP/private-derived-type.f90
    A flang/test/Lower/OpenMP/sections-array-reduction.f90
    A flang/test/Lower/OpenMP/sections-reduction.f90
    M flang/test/Lower/OpenMP/simd.f90
    M flang/test/Lower/OpenMP/target.f90
    M flang/test/Lower/OpenMP/task.f90
    A flang/test/Lower/OpenMP/task2.f90
    M flang/test/Lower/OpenMP/use-device-ptr-to-use-device-addr.f90
    M flang/test/Lower/OpenMP/wsloop-chunks.f90
    M flang/test/Lower/OpenMP/wsloop-reduction-allocatable-array-minmax.f90
    M flang/test/Lower/OpenMP/wsloop-reduction-allocatable.f90
    R libcxx/trigger

  Log Message:
  -----------
  refactor, rebase and attempt to address all comments

Created using spr 1.3.4


Compare: https://github.com/llvm/llvm-project/compare/55899202385c...b99629dff39f

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