[all-commits] [llvm/llvm-project] 7f2bd5: [libc++] Fix acceptance of convertible-to-{float, d...

wanglei via All-commits all-commits at lists.llvm.org
Fri Jul 19 02:48:48 PDT 2024


  Branch: refs/heads/users/wangleiat/spr/main.lldelfloongarch-add-support-for-r_larch_le_hi20addlo12_r-relocations
  Home:   https://github.com/llvm/llvm-project
  Commit: 7f2bd53b142ec147da9f8bd98775be1d14457ba1
      https://github.com/llvm/llvm-project/commit/7f2bd53b142ec147da9f8bd98775be1d14457ba1
  Author: Robin Caloudis <robin.caloudis at gmx.de>
  Date:   2024-07-18 (Thu, 18 Jul 2024)

  Changed paths:
    M libcxx/include/__math/traits.h
    M libcxx/test/std/numerics/c.math/isfinite.pass.cpp

  Log Message:
  -----------
  [libc++] Fix acceptance of convertible-to-{float,double,long double} in std::isfinite() (#98841)

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


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

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

  Log Message:
  -----------
  [X86] Add getGFNICtrlMask helper for the constant creation and bitcasting. NFC.


  Commit: fde51e24b593087a15494203ef68a77bb4f12115
      https://github.com/llvm/llvm-project/commit/fde51e24b593087a15494203ef68a77bb4f12115
  Author: Janet Cobb <jason.e.cobb at gmail.com>
  Date:   2024-07-18 (Thu, 18 Jul 2024)

  Changed paths:
    M libcxx/utils/libcxx/test/params.py

  Log Message:
  -----------
  [libc++][test] Raise a useful error when no -std=c++NN flag is found to work (#99423)

Recently ran into an issue with symptoms very similar to
https://github.com/llvm/llvm-project/issues/56816 while attempting to
build and test libc++ on NixOS. The error message is cryptic (just
`StopIteration`), which was very annoying to track down. The error at
least saying "hey your compiler's bad" would have saved me quite a bit
of time figuring out the issue.


  Commit: 3eb666e292baf87c969be733de858b0cb7ead13f
      https://github.com/llvm/llvm-project/commit/3eb666e292baf87c969be733de858b0cb7ead13f
  Author: Krasimir Georgiev <krasimir at google.com>
  Date:   2024-07-18 (Thu, 18 Jul 2024)

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

  Log Message:
  -----------
  update bazel for a6d2da8b9d7be19816dd4c76b02016c19618c1be


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

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

  Log Message:
  -----------
  [clang][Interp] Run record destructors when deallocating dynamic memory


  Commit: 4dfa75c663e53be1d548b340e562dd5c4e87fe65
      https://github.com/llvm/llvm-project/commit/4dfa75c663e53be1d548b340e562dd5c4e87fe65
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2024-07-18 (Thu, 18 Jul 2024)

  Changed paths:
    M libcxx/include/CMakeLists.txt
    M libcxx/include/__type_traits/is_enum.h
    R libcxx/include/__type_traits/is_scoped_enum.h
    M libcxx/include/module.modulemap
    M libcxx/include/type_traits

  Log Message:
  -----------
  [libc++] Merge is_scoped_enum.h into is_enum.h (#99458)


  Commit: 561246e90282a72b5b0c437cbbdae171526aad8f
      https://github.com/llvm/llvm-project/commit/561246e90282a72b5b0c437cbbdae171526aad8f
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2024-07-18 (Thu, 18 Jul 2024)

  Changed paths:
    M libcxx/include/__type_traits/remove_cv.h

  Log Message:
  -----------
  [libc++][NFC] Remove wrong #endif comment


  Commit: 15495b8cd4051d05c1b88c919e7c509a8ea4056a
      https://github.com/llvm/llvm-project/commit/15495b8cd4051d05c1b88c919e7c509a8ea4056a
  Author: Johannes Reifferscheid <jreiffers at google.com>
  Date:   2024-07-18 (Thu, 18 Jul 2024)

  Changed paths:
    M mlir/test/CAPI/rewrite.c

  Log Message:
  -----------
  [mlir] Fix unused-variable warning w/o assertions. (#99489)


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

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

  Log Message:
  -----------
  [clang][Interp] Fix CheckCallable for undefined-and-not-constexpr fns


  Commit: d9cb65ff483a2f79d0d3f0239796abe829372e52
      https://github.com/llvm/llvm-project/commit/d9cb65ff483a2f79d0d3f0239796abe829372e52
  Author: Romaric Jodin <rjodin at chromium.org>
  Date:   2024-07-18 (Thu, 18 Jul 2024)

  Changed paths:
    M libclc/generic/include/clc/convert.h
    M libclc/generic/lib/gen_convert.py

  Log Message:
  -----------
  libclc: fix convert with half (#99481)

Fix following update of libclc introducing more fp16 support:
https://github.com/llvm/llvm-project/commit/7e6a73959ae97b1f9476a90290a492ba90cb950d


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

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

  Log Message:
  -----------
  Revert "[clang][Interp] Fix CheckCallable for undefined-and-not-constexpr fns"

This reverts commit d00b35534d068510025d22e5bd9c4fdac45757fb.

This breaks the ms-constexpr test:
https://lab.llvm.org/buildbot/#/builders/144/builds/2605


  Commit: a778909168746e266ad52b817a758328cdd28311
      https://github.com/llvm/llvm-project/commit/a778909168746e266ad52b817a758328cdd28311
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2024-07-18 (Thu, 18 Jul 2024)

  Changed paths:
    M llvm/utils/gn/secondary/libcxx/include/BUILD.gn

  Log Message:
  -----------
  [gn build] Port 4dfa75c663e5


  Commit: 684a61506a3ddc943b8baef1d14c96bbf82e6c04
      https://github.com/llvm/llvm-project/commit/684a61506a3ddc943b8baef1d14c96bbf82e6c04
  Author: A. Jiang <de34 at live.cn>
  Date:   2024-07-18 (Thu, 18 Jul 2024)

  Changed paths:
    M libcxx/docs/ReleaseNotes/19.rst
    M libcxx/docs/ReleaseNotes/20.rst
    M libcxx/include/__chrono/weekday.h
    M libcxx/test/std/time/time.cal/time.cal.weekday/time.cal.weekday.nonmembers/comparisons.pass.cpp

  Log Message:
  -----------
  [libc++][chrono] Remove non-standard relational operators for `std::chrono::weekday` (#98730)

These operators are absent in https://eel.is/c++draft/time.syn and a note in
https://eel.is/c++draft/time.cal.wd.overview#1 indicates that the absence is 
intended.

This patch removes the undocumented extension, while providing a migration path
for vendors by providing the `_LIBCPP_ENABLE_REMOVED_WEEKDAY_RELATIONAL_OPERATORS`
macro. This macro will be honored for the LLVM 19 release and will be removed after 
that, at which point allocator will be removed unconditionally.


  Commit: 078198f310d55925ccd9e1aa5b6ff4af3b36bbc7
      https://github.com/llvm/llvm-project/commit/078198f310d55925ccd9e1aa5b6ff4af3b36bbc7
  Author: Jeremy Morse <jeremy.morse at sony.com>
  Date:   2024-07-18 (Thu, 18 Jul 2024)

  Changed paths:
    M llvm/lib/CodeGen/LiveDebugValues/InstrRefBasedImpl.cpp
    M llvm/lib/CodeGen/LiveDebugValues/InstrRefBasedImpl.h
    M llvm/test/DebugInfo/MIR/X86/live-debug-values-fragments.mir
    M llvm/unittests/CodeGen/InstrRefLDVTest.cpp

  Log Message:
  -----------
  [DebugInfo][InstrRef] Index DebugVariables and some DILocations (#99318)

A lot of time in LiveDebugValues is spent computing DenseMap keys for
DebugVariables, and they're made up of three pointers, so are large.
This patch installs an index for them: for the SSA and value-to-location
mapping parts of InstrRefBasedLDV we don't need to access things like
the variable declaration or the inlining site, so just use a uint32_t
identifier for each variable fragment that's tracked. The compile-time
performance improvements are substantial (almost 0.4% on the tracker).

About 80% of this patch is just replacing DebugVariable references with
DebugVariableIDs instead, however there are some larger consequences. We
spend lots of time fetching DILocations when emitting DBG_VALUE
instructions, so index those with the DebugVariables: this means all
DILocations on all new DBG_VALUE instructions will normalise to the
first-seen DILocation for the variable (which should be fine).

We also used to keep an ordering of when each variable was seen first in
a DBG_* instruction, in the AllVarsNumbering collection, so that we can
emit new DBG_* instructions in a stable order. We can hang this off the
DebugVariable index instead, so AllVarsNumbering is deleted.

Finally, rather than ordering by AllVarsNumbering just before DBG_*
instructions are linked into the output MIR, store instructions along
with their DebugVariableID, so that they can be sorted by that instead.


  Commit: 50b657c8f655a86826e94131729b0f13a58acbca
      https://github.com/llvm/llvm-project/commit/50b657c8f655a86826e94131729b0f13a58acbca
  Author: Jeremy Morse <jeremy.morse at sony.com>
  Date:   2024-07-18 (Thu, 18 Jul 2024)

  Changed paths:
    M llvm/lib/CodeGen/LiveDebugValues/InstrRefBasedImpl.cpp
    M llvm/lib/CodeGen/LiveDebugValues/InstrRefBasedImpl.h
    M llvm/test/DebugInfo/MIR/X86/live-debug-values-fragments.mir
    M llvm/unittests/CodeGen/InstrRefLDVTest.cpp

  Log Message:
  -----------
  Revert "[DebugInfo][InstrRef] Index DebugVariables and some DILocations (#99318)"

This reverts commit 078198f310d55925ccd9e1aa5b6ff4af3b36bbc7.

Buildbots unhappy, I must have fluffed it


  Commit: 1a80153ba91f1e623c042fa0ae1ee5ab67087c0e
      https://github.com/llvm/llvm-project/commit/1a80153ba91f1e623c042fa0ae1ee5ab67087c0e
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2024-07-18 (Thu, 18 Jul 2024)

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

  Log Message:
  -----------
  [LV][NFC]Simplify the structure and improve message of safe distance analysis for scalable vectorization. (#99487)


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

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/bitreverse.ll
    M llvm/test/CodeGen/X86/gfni-funnel-shifts.ll
    M llvm/test/CodeGen/X86/gfni-rotates.ll
    M llvm/test/CodeGen/X86/gfni-shifts.ll
    M llvm/test/CodeGen/X86/vector-bitreverse.ll

  Log Message:
  -----------
  [X86] getGFNICtrlMask - create a vXi8 mask instead of a bitcasted vXi64 mask.

Helps avoid some missed load-folds by stripping away bitcasts and make it easier to grok the GF2P8AFFINEQB masks.


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

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

  Log Message:
  -----------
  Reapply "[clang][Interp] Fix CheckCallable for undefined-and-not-constexpr fns"

This reverts commit ad7aeb0ff58ebd29f68adb85c64e8010639e2a76.


  Commit: cd495d2cdd84a22026a115c7e9923c27b196732e
      https://github.com/llvm/llvm-project/commit/cd495d2cdd84a22026a115c7e9923c27b196732e
  Author: Utkarsh Saxena <usx at google.com>
  Date:   2024-07-18 (Thu, 18 Jul 2024)

  Changed paths:
    A a-abfdec1d.o.tmp
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Driver/Options.td
    M clang/include/clang/Frontend/FrontendOptions.h
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/lib/Sema/SemaTemplateInstantiate.cpp
    M clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
    M clang/test/Driver/ftime-trace-sections.cpp
    M clang/test/Driver/ftime-trace.cpp
    M clang/tools/driver/cc1_main.cpp
    M clang/unittests/Support/TimeProfilerTest.cpp
    M llvm/include/llvm/Support/TimeProfiler.h
    M llvm/lib/Support/TimeProfiler.cpp

  Log Message:
  -----------
  Add source file name for template instantiations in -ftime-trace (#98320)

This is helpful in identifying file and location which contain the particular template declaration.


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

  Changed paths:
    M llvm/docs/GlobalISel/GenericOpcode.rst
    M llvm/include/llvm/CodeGen/GlobalISel/MachineIRBuilder.h
    M llvm/include/llvm/Support/TargetOpcodes.def
    M llvm/include/llvm/Target/GenericOpcodes.td
    M llvm/lib/CodeGen/GlobalISel/MachineIRBuilder.cpp
    M llvm/lib/CodeGen/MachineVerifier.cpp
    M llvm/test/CodeGen/AArch64/GlobalISel/legalizer-info-validation.mir
    A llvm/test/MachineVerifier/test_uscmp.mir
    M llvm/test/TableGen/GlobalISelCombinerEmitter/match-table-cxx.td
    M llvm/test/TableGen/GlobalISelEmitter.td

  Log Message:
  -----------
  [GlobalIsel] Add G_SCMP and G_UCMP instructions (#98894)

https://github.com/llvm/llvm-project/pull/83227


  Commit: 47b63cd508f993d9fab2acfbf0dcf86cdc8c5335
      https://github.com/llvm/llvm-project/commit/47b63cd508f993d9fab2acfbf0dcf86cdc8c5335
  Author: Daniel Bertalan <dani at danielbertalan.dev>
  Date:   2024-07-18 (Thu, 18 Jul 2024)

  Changed paths:
    M lld/MachO/Config.h
    M lld/MachO/Driver.cpp
    M lld/MachO/InputFiles.cpp
    M lld/MachO/Options.td
    A lld/test/MachO/reproduce-thin-archive-objc.s
    M lld/test/MachO/reproduce-thin-archives.s

  Log Message:
  -----------
  [lld-macho] Save all thin archive members in repro tarball (#97169)

Previously, we only saved those members of thin archives into a repro
file that were actually used during linking. However, -ObjC handling
requires us to inspect all members, even those that don't end up being
loaded.

We weren't handling missing members correctly and crashed with an
"unhandled `Error`" failure in LLVM_ENABLE_ABI_BREAKING_CHECKS builds.

To fix this, we now eagerly load all object files and warn when
encountering missing members (in the instances where it wasn't a hard
error before). To avoid having to patch out the checks when dealing
with older repro files, the `--no-warn-thin-archive-missing-members`
flag is added as an escape hatch.


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

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

  Log Message:
  -----------
  [clang][test] Split AArch64 target feature checks across multiple lines. NFC (#99365)

Whenever these tests change, it's difficult to see why they don't match,
and the diff after you've fixed them isn't easy to grok. By splitting
them with a sed pipe, we fix both issues simultaneously.


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

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

  Log Message:
  -----------
  [clang][Interp] Diagnose out-of-range casts to enum types


  Commit: 7d74ca9513a3fa53b482230c20b1977a1f3d121b
      https://github.com/llvm/llvm-project/commit/7d74ca9513a3fa53b482230c20b1977a1f3d121b
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-07-18 (Thu, 18 Jul 2024)

  Changed paths:
    M llvm/include/llvm/Analysis/ValueLattice.h
    M llvm/test/Transforms/CorrelatedValuePropagation/vectors.ll
    M llvm/test/Transforms/SCCP/phis.ll

  Log Message:
  -----------
  [ValueLattice] Support constant vectors in mergeIn() (#99466)

This is a followup to vector support in LVI/CVP/SCCP. In mergeIn(), if
one of the operands is a vector of integer constant, we should try to
convert it into a constant range, in case that allows performing a range
union to something better than overdefined.


  Commit: 9711f6bda1363eb3b8850ee67958ab90357db006
      https://github.com/llvm/llvm-project/commit/9711f6bda1363eb3b8850ee67958ab90357db006
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-07-18 (Thu, 18 Jul 2024)

  Changed paths:
    M llvm/test/Transforms/GVN/condprop.ll

  Log Message:
  -----------
  [GVN] Add additional tests for pointer replacement (NFC)


  Commit: f6b06b42a3f4f59ff33da20d42358f2768eaf726
      https://github.com/llvm/llvm-project/commit/f6b06b42a3f4f59ff33da20d42358f2768eaf726
  Author: Akira Hatanaka <ahatanak at gmail.com>
  Date:   2024-07-18 (Thu, 18 Jul 2024)

  Changed paths:
    M clang/lib/CodeGen/Address.h
    M clang/lib/CodeGen/CGBuilder.h
    M clang/lib/CodeGen/CGExpr.cpp
    M clang/lib/CodeGen/CGExprScalar.cpp
    M clang/lib/CodeGen/CGPointerAuth.cpp
    M clang/lib/CodeGen/CGValue.h
    M clang/lib/CodeGen/CodeGenFunction.cpp
    M clang/lib/CodeGen/CodeGenFunction.h
    M clang/lib/Headers/ptrauth.h
    A clang/test/CodeGen/ptrauth-function-lvalue-cast-disc.c
    A clang/test/CodeGen/ptrauth-function-type-discriminator-cast.c

  Log Message:
  -----------
  [PAC] Implement function pointer re-signing (#98847)

Re-signing occurs when function type discrimination is enabled and a
function pointer is converted to another function pointer type that
requires signing using a different discriminator. A function pointer is
re-signed using discriminator zero when it's converted to a pointer to a
non-function type such as `void*`.

---------

Co-authored-by: Ahmed Bougacha <ahmed at bougacha.org>
Co-authored-by: John McCall <rjmccall at apple.com>


  Commit: 676efd0ffb717215c752f200fe14163732290dcc
      https://github.com/llvm/llvm-project/commit/676efd0ffb717215c752f200fe14163732290dcc
  Author: Jeremy Morse <jeremy.morse at sony.com>
  Date:   2024-07-18 (Thu, 18 Jul 2024)

  Changed paths:
    M llvm/lib/CodeGen/LiveDebugValues/InstrRefBasedImpl.cpp
    M llvm/lib/CodeGen/LiveDebugValues/InstrRefBasedImpl.h
    M llvm/test/DebugInfo/MIR/X86/live-debug-values-fragments.mir
    M llvm/unittests/CodeGen/InstrRefLDVTest.cpp

  Log Message:
  -----------
  Reapply 078198f310d5 "Index DebugVariables and some DILocations"

Now revised to actually make the unit test compile, which I'd been
ignoring. No actual functional change, it's a type difference.
Original commit message follows.

[DebugInfo][InstrRef] Index DebugVariables and some DILocations (#99318)

A lot of time in LiveDebugValues is spent computing DenseMap keys for
DebugVariables, and they're made up of three pointers, so are large.
This patch installs an index for them: for the SSA and value-to-location
mapping parts of InstrRefBasedLDV we don't need to access things like
the variable declaration or the inlining site, so just use a uint32_t
identifier for each variable fragment that's tracked. The compile-time
performance improvements are substantial (almost 0.4% on the tracker).

About 80% of this patch is just replacing DebugVariable references with
DebugVariableIDs instead, however there are some larger consequences. We
spend lots of time fetching DILocations when emitting DBG_VALUE
instructions, so index those with the DebugVariables: this means all
DILocations on all new DBG_VALUE instructions will normalise to the
first-seen DILocation for the variable (which should be fine).

We also used to keep an ordering of when each variable was seen first in
a DBG_* instruction, in the AllVarsNumbering collection, so that we can
emit new DBG_* instructions in a stable order. We can hang this off the
DebugVariable index instead, so AllVarsNumbering is deleted.

Finally, rather than ordering by AllVarsNumbering just before DBG_*
instructions are linked into the output MIR, store instructions along
with their DebugVariableID, so that they can be sorted by that instead.


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

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

  Log Message:
  -----------
  [DAG] tryToFoldExtendSelectLoad - reuse existing SDLoc. NFC.


  Commit: 2bdcfbe62cb9a08df4b58a17d44be0a3082df053
      https://github.com/llvm/llvm-project/commit/2bdcfbe62cb9a08df4b58a17d44be0a3082df053
  Author: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>
  Date:   2024-07-18 (Thu, 18 Jul 2024)

  Changed paths:
    M clang/lib/Sema/SemaDecl.cpp
    M clang/lib/Sema/SemaType.cpp
    M clang/test/CXX/drs/cwg24xx.cpp
    M clang/test/SemaCXX/cxx-deprecated.cpp

  Log Message:
  -----------
  [clang] Fix crash in concept deprecation (#98622)

There is a gap between `getAs<AutoType>()` and
`getConstrainedAutoType()` that the original patch #92295 was not aware
of.

Fixes #98164


  Commit: a2d309912a2863dfe7286ffde67b968e8c720b07
      https://github.com/llvm/llvm-project/commit/a2d309912a2863dfe7286ffde67b968e8c720b07
  Author: Alexandros Lamprineas <alexandros.lamprineas at arm.com>
  Date:   2024-07-18 (Thu, 18 Jul 2024)

  Changed paths:
    M clang/lib/CodeGen/CodeGenModule.cpp
    A clang/test/CodeGen/aarch64-fmv-resolver-emission.c
    M clang/test/CodeGen/aarch64-mixed-target-attributes.c
    M clang/test/CodeGen/attr-target-clones-aarch64.c
    M clang/test/CodeGen/attr-target-version.c
    A clang/test/CodeGenCXX/aarch64-fmv-resolver-emission.cpp
    M clang/test/CodeGenCXX/attr-target-clones-aarch64.cpp
    M clang/test/CodeGenCXX/attr-target-version.cpp
    M clang/test/CodeGenCXX/fmv-namespace.cpp

  Log Message:
  -----------
  [FMV][AArch64] Do not emit ifunc resolver on use. (#97761)

It was raised in https://github.com/llvm/llvm-project/issues/81494 that
we are not generating correct code when there is no TU-local caller.

The suggestion was to emit a resolver:
* Whenever there is a use in the TU.
* When the TU has a definition of the default version.

See the comment for more details:

https://github.com/llvm/llvm-project/issues/81494#issuecomment-1985963497

This got addressed with https://github.com/llvm/llvm-project/pull/84405.

Generating a resolver on use means that we may end up with multiple
resolvers across different translation units. Those resolvers may not be
the same because each translation unit may contain different version
declarations (user's fault). Therefore the order of linking the final
image determines which of these weak symbols gets selected, resulting in
non consisted behavior. I am proposing to stop emitting a resolver on
use and only do so in the translation unit which contains the default
definition. This way we guarantee the existence of a single resolver.
Now, when a versioned function is used we want to emit a declaration of
the function symbol omitting the multiversion mangling.

I have added a requirement to ACLE mandating that all the function
versions are declared in the translation unit which contains the default
definition: https://github.com/ARM-software/acle/pull/328


  Commit: 9af3628ce7400a96205a4c4468867c3c11dd4b2f
      https://github.com/llvm/llvm-project/commit/9af3628ce7400a96205a4c4468867c3c11dd4b2f
  Author: Ulrich Weigand <ulrich.weigand at de.ibm.com>
  Date:   2024-07-18 (Thu, 18 Jul 2024)

  Changed paths:
    M clang/lib/CodeGen/Targets/SystemZ.cpp
    M clang/test/CodeGen/SystemZ/systemz-abi.c

  Log Message:
  -----------
  [SystemZ] Fix transparent_union calling convention

The SystemZ ABI code was missing code to handle the transparent_union
extension.  Arguments of such types are specified to be passed like
the first member of the union, instead of according to the usual
ABI calling convention for aggregates.

This did not make much difference in practice as the SystemZ ABI
already specifies that 1-, 2-, 4- or 8-byte aggregates are passed
in registers.  However, there *is* a difference if the first member
of the transparent union is a scalar integer type smaller than word
size - if passed as a scalar, it needs to be zero- or sign-extended
to word size, while if passed as aggregate, it is not.

Fixed by adding code to handle transparent_union similar to what
is done on other targets.


  Commit: 0c4023ae3b64c54ff51947e9776aee0e963c5635
      https://github.com/llvm/llvm-project/commit/0c4023ae3b64c54ff51947e9776aee0e963c5635
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-07-18 (Thu, 18 Jul 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vwmul.ll

  Log Message:
  -----------
  [RISCV] Use Root instead of N throughout the worklist loop in combineBinOp_VLToVWBinOp_VL. (#99416)

We were only checking that the node from the worklist is a supported
root. We weren't checking the strategy or any of its operands unless it
was the original node. For any other node, we just rechecked the
original node's strategy and operands.

The effect of this is that we don't do all of the transformations at
once. Instead, when there were multiple possible nodes to transform we
would only do them as each node was visited by the main DAG combine
worklist.

The test shows a case where we widened an instruction without removing
all of the uses of the vsext. The sext is shared by one node that shares
another sext node with the root another node that doesn't share anything
with the root.


  Commit: 342bd4b89355c27203b5f1abd8c43de6b01aba14
      https://github.com/llvm/llvm-project/commit/342bd4b89355c27203b5f1abd8c43de6b01aba14
  Author: Ben Langmuir <blangmuir at apple.com>
  Date:   2024-07-18 (Thu, 18 Jul 2024)

  Changed paths:
    M llvm/include/llvm/ExecutionEngine/Orc/ExecutionUtils.h
    M llvm/lib/ExecutionEngine/Orc/ExecutionUtils.cpp
    A llvm/test/ExecutionEngine/JITLink/x86-64/MachO_archive_two_objects_same_name.s

  Log Message:
  -----------
  [orc] Add the name of static archives to the name of their member objects (#99407)

Changes "MyObj.o" to "/path/to/libMyLib.a(MyObj.o)".

This allows us to differentiate between objects that have the same
basename but came from different archives. It also fixes a bug where if
two such objects were both linked and both have initializer sections
their initializer symbol would cause a duplicate symbol error.

rdar://131782514


  Commit: 10627d20044cb13d3fa60a3bce31d37edb3a591f
      https://github.com/llvm/llvm-project/commit/10627d20044cb13d3fa60a3bce31d37edb3a591f
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-07-18 (Thu, 18 Jul 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vwmul.ll

  Log Message:
  -----------
  Revert "[RISCV] Use Root instead of N throughout the worklist loop in combineBinOp_VLToVWBinOp_VL. (#99416)"

This reverts commit 0c4023ae3b64c54ff51947e9776aee0e963c5635.

I messed up re-generating the test after the change.


  Commit: 0ce11a1a763d46e4afe678f3f94a1932c1dcfe5d
      https://github.com/llvm/llvm-project/commit/0ce11a1a763d46e4afe678f3f94a1932c1dcfe5d
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2024-07-18 (Thu, 18 Jul 2024)

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

  Log Message:
  -----------
  [libc++] Add a release note about C++03 being frozen after LLVM 21 (#95894)

Co-authored-by: Louis Dionne <ldionne.2 at gmail.com>


  Commit: 2bf91db0c743f041c9f83609399f75654c07445a
      https://github.com/llvm/llvm-project/commit/2bf91db0c743f041c9f83609399f75654c07445a
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2024-07-18 (Thu, 18 Jul 2024)

  Changed paths:
    M libcxx/include/string

  Log Message:
  -----------
  [libc++] Use char_traits::copy while inserting when possible (#97201)

This reduces the number of asm lines from 707 to 519 for this snippet:
```c++
auto test(std::string& str, const char* begin, const char* end) {
  str.insert(str.begin(), begin, end);
}
```
While that's not a performance metric, I've never seen a use of `memcpy`
result in a performance regression for any realistic usage.


  Commit: 77ac07444d32668d5826ef27c24180fb10425213
      https://github.com/llvm/llvm-project/commit/77ac07444d32668d5826ef27c24180fb10425213
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-07-18 (Thu, 18 Jul 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vwmul.ll

  Log Message:
  -----------
  Re-commit "[RISCV] Use Root instead of N throughout the worklist loop in combineBinOp_VLToVWBinOp_VL. (#99416)"

With correct test update.

Original message:

We were only checking that the node from the worklist is a supported
root. We weren't checking the strategy or any of its operands unless it
was the original node. For any other node, we just rechecked the
original node's strategy and operands.

The effect of this is that we don't do all of the transformations at
once. Instead, when there were multiple possible nodes to transform we
would only do them as each node was visited by the main DAG combine
worklist.

The test shows a case where we widened an instruction without removing
all of the uses of the vsext. The sext is shared by one node that shares
another sext node with the root another node that doesn't share anything
with the root.


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

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

  Log Message:
  -----------
  [BOLT][DWARF][NFC] Remove DWO ranges base (#99284)

Removes getters and setters for DWO ranges base due to it not being
used.


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

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

  Log Message:
  -----------
  [clang][Interp][test] Use fixed triple in cxx11 test

This uses 'long', which has a different size on Windows. The test
I copied this from also uses x86_64-linux.

This should fix the bot:
https://lab.llvm.org/buildbot/#/builders/81/builds/853


  Commit: fe04aafe6c27f32ad4ba38e552d06d14431cb2de
      https://github.com/llvm/llvm-project/commit/fe04aafe6c27f32ad4ba38e552d06d14431cb2de
  Author: Uday Bondhugula <uday at polymagelabs.com>
  Date:   2024-07-18 (Thu, 18 Jul 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/Affine/Analysis/LoopAnalysis.h
    M mlir/lib/Dialect/Affine/Analysis/LoopAnalysis.cpp
    M mlir/lib/Dialect/Affine/Transforms/LoopTiling.cpp
    M mlir/test/Dialect/Affine/loop-tiling-validity.mlir

  Log Message:
  -----------
  [MLIR][Affine] NFC. Expose affine loop tiling validity utility (#99459)

Move the utility to check for the validity of tiling affine loop nests
to affine loop utils and expose for users outside the loop tiling pass
or downstream users.


  Commit: 06ab30b57450694818dbb649dec2a687f44df7f4
      https://github.com/llvm/llvm-project/commit/06ab30b57450694818dbb649dec2a687f44df7f4
  Author: Changpeng Fang <changpeng.fang at amd.com>
  Date:   2024-07-18 (Thu, 18 Jul 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUInstCombineIntrinsic.cpp
    M llvm/test/Transforms/InstCombine/AMDGPU/amdgcn-intrinsics.ll

  Log Message:
  -----------
  [AMDGPU] Constant folding of llvm.amdgcn.trig.preop (#98562)

If the parameters(the input and segment select) coming in to
amdgcn.trig.preop intrinsic are compile time constants, we pre-compute
the output of amdgcn.trig.preop on the CPU and replaces the uses with
the computed constant.

This work extends the patch https://reviews.llvm.org/D120150 to make it
a complete coverage.

For the segment select, only src1[4:0] are used. A segment select is
invalid if we are selecting the 53-bit segment beyond the [1200:0] range
of the 2/PI table. 0 is returned when a segment select is not valid.


  Commit: 371777695fe1b5407753ef2232d1b73014d3e501
      https://github.com/llvm/llvm-project/commit/371777695fe1b5407753ef2232d1b73014d3e501
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-07-18 (Thu, 18 Jul 2024)

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

  Log Message:
  -----------
  [LV] Assert uniform recipes don't get predicated for when vectorizing.

Add assertion ensuring invariant on construction, split off as suggested
from https://github.com/llvm/llvm-project/pull/98892.


  Commit: d06b55e7934635049d55efff2dc9e745f911240c
      https://github.com/llvm/llvm-project/commit/d06b55e7934635049d55efff2dc9e745f911240c
  Author: Michael Klemm <michael.klemm at amd.com>
  Date:   2024-07-18 (Thu, 18 Jul 2024)

  Changed paths:
    M flang/runtime/misc-intrinsic.cpp

  Log Message:
  -----------
  [Flang][Runtime] Improve runtime implementation of the RENAME intrinsic (#99445)

The RENAME implementation in the Fortran runtime had a few glitches that
had to be addressed:

- Wrong usage of RTDECL (fixed)
- Issue fatal error when trying to use RENAME on a target device (fixed)


  Commit: 3d69bbc35158822c9e1371b5c37a24213a8a81fc
      https://github.com/llvm/llvm-project/commit/3d69bbc35158822c9e1371b5c37a24213a8a81fc
  Author: Dominik Steenken <dost at de.ibm.com>
  Date:   2024-07-18 (Thu, 18 Jul 2024)

  Changed paths:
    M llvm/lib/Target/SystemZ/SystemZInstrHFP.td
    M llvm/test/MC/SystemZ/insn-bad.s
    M llvm/test/MC/SystemZ/insn-good.s

  Log Message:
  -----------
  Allow MAY(R)? to accept the high components of register pairs (#98606)

The HFP instructions `MAY` and `MAYR`, unlike any other floating point
instructions, allow the specification of a 128bit register pair by
either the lower-numbered or the higher-numbered component register. In
order to support this, but change as little about codegen as possible,
the existing `MAY(R)?` definition is made `CodeGenOnly`, while a copy is
provided for the assembler and disassembler, which simply accepts a
64bit floating point register in place of the 128bit one. This copy is
stripped of its pattern to prevent codegen from using it.
The corresponding assembly tests that checked the register specification
rule that this commit removes from `MAY(R)?` have also been removed.


  Commit: 574dbe3e9cdaf94b390015a53b76f87bdaf68aae
      https://github.com/llvm/llvm-project/commit/574dbe3e9cdaf94b390015a53b76f87bdaf68aae
  Author: Christopher Di Bella <cjdb at google.com>
  Date:   2024-07-18 (Thu, 18 Jul 2024)

  Changed paths:
    M llvm/lib/CodeGen/LiveDebugValues/InstrRefBasedImpl.cpp

  Log Message:
  -----------
  suppresses unused variable warning (#99526)


  Commit: 74e51e3efe1d4c79c1b7914c3ead19832e8cc1fb
      https://github.com/llvm/llvm-project/commit/74e51e3efe1d4c79c1b7914c3ead19832e8cc1fb
  Author: Han-Kuan Chen <hankuan.chen at sifive.com>
  Date:   2024-07-18 (Thu, 18 Jul 2024)

  Changed paths:
    A llvm/test/Transforms/SLPVectorizer/X86/revec-fix-99411.ll
    R llvm/test/Transforms/SLPVectorizer/revec-fix-99411.ll

  Log Message:
  -----------
  Move the test to the correct folder. A test specified for a target
should remain in its designated folder.


  Commit: 13a8f8d51962b59949496c460ea0b8ad22ae908a
      https://github.com/llvm/llvm-project/commit/13a8f8d51962b59949496c460ea0b8ad22ae908a
  Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
  Date:   2024-07-19 (Fri, 19 Jul 2024)

  Changed paths:
    M llvm/lib/Transforms/Utils/BuildLibCalls.cpp
    M llvm/test/Transforms/InferFunctionAttrs/annotate.ll

  Log Message:
  -----------
  [InferAttrs] Set attributes for `remainder` (#99521)

Fixes one of the issues in
https://github.com/llvm/llvm-project/issues/99497.


  Commit: 1c55586e9a475a09b7d769e7fc9a254e7150c972
      https://github.com/llvm/llvm-project/commit/1c55586e9a475a09b7d769e7fc9a254e7150c972
  Author: Cyndy Ishida <cyndy_ishida at apple.com>
  Date:   2024-07-18 (Thu, 18 Jul 2024)

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

  Log Message:
  -----------
  [clang] Fix typo in comments


  Commit: ce8c43fe274f3f090cad2342af6032176efb846f
      https://github.com/llvm/llvm-project/commit/ce8c43fe274f3f090cad2342af6032176efb846f
  Author: Lei Wang <wlei at fb.com>
  Date:   2024-07-18 (Thu, 18 Jul 2024)

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

  Log Message:
  -----------
  Fix assertion of null pointer samples in inline replay mode (#99378)

Fix https://github.com/llvm/llvm-project/issues/97108. In inline replay
mode, `CalleeSamples` may be null and the order doesn't matter.


  Commit: b2dcf62c514d3c9c143c85bd029d22098b92c38d
      https://github.com/llvm/llvm-project/commit/b2dcf62c514d3c9c143c85bd029d22098b92c38d
  Author: Meredith Julian <35236176+mjulian31 at users.noreply.github.com>
  Date:   2024-07-18 (Thu, 18 Jul 2024)

  Changed paths:
    M llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
    A llvm/test/CodeGen/NVPTX/i1-ext-load.ll
    A llvm/test/CodeGen/NVPTX/i1-load-lower.ll

  Log Message:
  -----------
  [NVPTX] fix emission for i1 load and extload (#99392)

Currently, an illegal 2-byte load from a 1-byte global variable is being
generated. This change instead generates a 1-byte load and zero-extends
it to i16 register. This was always the intended behavior of the
function.

In addition, an i1 ext load of any kind needs to be promoted. A missing
setLoadExtAction for ISD::EXTLOAD was causing an "Unhandled source type"
unreachable due to an illegal i1 ext load during ISelDAGtoDAG (see below
bug).

Bug https://github.com/llvm/llvm-project/issues/98033.


  Commit: 04bcd74df73af6fed16bfd0d6784fc0aec582bc0
      https://github.com/llvm/llvm-project/commit/04bcd74df73af6fed16bfd0d6784fc0aec582bc0
  Author: Utkarsh Saxena <usx at google.com>
  Date:   2024-07-18 (Thu, 18 Jul 2024)

  Changed paths:
    R a-abfdec1d.o.tmp
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Driver/Options.td
    M clang/include/clang/Frontend/FrontendOptions.h
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/lib/Sema/SemaTemplateInstantiate.cpp
    M clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
    M clang/test/Driver/ftime-trace-sections.cpp
    M clang/test/Driver/ftime-trace.cpp
    M clang/tools/driver/cc1_main.cpp
    M clang/unittests/Support/TimeProfilerTest.cpp
    M llvm/include/llvm/Support/TimeProfiler.h
    M llvm/lib/Support/TimeProfiler.cpp

  Log Message:
  -----------
  Revert "Add source file name for template instantiations in -ftime-trace" (#99534)

Reverts llvm/llvm-project#98320

Breaks windows tests:

```
Step 8 (test-build-unified-tree-check-clang-unit) failure: test (failure)
******************** TEST 'Clang-Unit :: Support/./ClangSupportTests.exe/1/3' FAILED ********************
Script(shard):
--
GTEST_OUTPUT=json:C:\buildbot\as-builder-3\llvm-clang-x86_64-win-fast\build\tools\clang\unittests\Support\.\ClangSupportTests.exe-Clang-Unit-4296-1-3.json GTEST_SHUFFLE=0 GTEST_TOTAL_SHARDS=3 GTEST_SHARD_INDEX=1 C:\buildbot\as-builder-3\llvm-clang-x86_64-win-fast\build\tools\clang\unittests\Support\.\ClangSupportTests.exe
--

Script:
--
C:\buildbot\as-builder-3\llvm-clang-x86_64-win-fast\build\tools\clang\unittests\Support\.\ClangSupportTests.exe --gtest_filter=TimeProfilerTest.TemplateInstantiations
--
C:\buildbot\as-builder-3\llvm-clang-x86_64-win-fast\llvm-project\clang\unittests\Support\TimeProfilerTest.cpp(278): error: Expected equality of these values:
  R"(
Frontend
| ParseFunctionDefinition (fooB)
| ParseFunctionDefinition (fooMTA)
| ParseFunctionDefinition (fooA)
| ParseDeclarationOrFunctionDefinition (test.cc:3:5)
| | ParseFunctionDefinition (user)
| PerformPendingInstantiations
| | InstantiateFunction (fooA<int>, ./a.h:7)
| | | InstantiateFunction (fooB<int>, ./b.h:3)
| | | InstantiateFunction (fooMTA<int>, ./a.h:4)
)"
    Which is: "\nFrontend\n| ParseFunctionDefinition (fooB)\n| ParseFunctionDefinition (fooMTA)\n| ParseFunctionDefinition (fooA)\n| ParseDeclarationOrFunctionDefinition (test.cc:3:5)\n| | ParseFunctionDefinition (user)\n| PerformPendingInstantiations\n| | InstantiateFunction (fooA<int>, ./a.h:7)\n| | | InstantiateFunction (fooB<int>, ./b.h:3)\n| | | InstantiateFunction (fooMTA<int>, ./a.h:4)\n"
  buildTraceGraph(Json)
    Which is: "\nFrontend\n| ParseFunctionDefinition (fooB)\n| ParseFunctionDefinition (fooMTA)\n| ParseFunctionDefinition (fooA)\n| ParseDeclarationOrFunctionDefinition (test.cc:3:5)\n| | ParseFunctionDefinition (user)\n| PerformPendingInstantiations\n| | InstantiateFunction (fooA<int>, .\\a.h:7)\n| | | InstantiateFunction (fooB<int>, .\\b.h:3)\n| | | InstantiateFunction (fooMTA<int>, .\\a.h:4)\n"
With diff:
@@ -7,5 +7,5 @@
 | | ParseFunctionDefinition (user)
 | PerformPendingInstantiations
-| | InstantiateFunction (fooA<int>, ./a.h:7)
-| | | InstantiateFunction (fooB<int>, ./b.h:3)
-| | | InstantiateFunction (fooMTA<int>, ./a.h:4)\n
+| | InstantiateFunction (fooA<int>, .\\a.h:7)
+| | | InstantiateFunction (fooB<int>, .\\b.h:3)
+| | | InstantiateFunction (fooMTA<int>, .\\a.h:4)\n



C:\buildbot\as-builder-3\llvm-clang-x86_64-win-fast\llvm-project\clang\unittests\Support\TimeProfilerTest.cpp:278
Expected equality of these values:
  R"(
Frontend
| ParseFunctionDefinition (fooB)
| ParseFunctionDefinition (fooMTA)
| ParseFunctionDefinition (fooA)
| ParseDeclarationOrFunctionDefinition (test.cc:3:5)
| | ParseFunctionDefinition (user)
| PerformPendingInstantiations
| | InstantiateFunction (fooA<int>, ./a.h:7)

```


  Commit: 9fb049c8c6a77026fa75a8d36b386a7f5a60613a
      https://github.com/llvm/llvm-project/commit/9fb049c8c6a77026fa75a8d36b386a7f5a60613a
  Author: OverMighty <its.overmighty at gmail.com>
  Date:   2024-07-18 (Thu, 18 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/llvm_libc_ext.td
    M libc/spec/stdc.td
    M libc/src/__support/FPUtil/generic/CMakeLists.txt
    A libc/src/__support/FPUtil/generic/mul.h
    M libc/src/math/CMakeLists.txt
    A libc/src/math/dmulf128.h
    A libc/src/math/dmull.h
    A libc/src/math/f16mul.h
    A libc/src/math/f16mulf.h
    A libc/src/math/f16mulf128.h
    A libc/src/math/f16mull.h
    A libc/src/math/fmulf128.h
    A libc/src/math/fmull.h
    M libc/src/math/generic/CMakeLists.txt
    A libc/src/math/generic/dmulf128.cpp
    A libc/src/math/generic/dmull.cpp
    A libc/src/math/generic/f16mul.cpp
    A libc/src/math/generic/f16mulf.cpp
    A libc/src/math/generic/f16mulf128.cpp
    A libc/src/math/generic/f16mull.cpp
    M libc/src/math/generic/fmul.cpp
    A libc/src/math/generic/fmulf128.cpp
    A libc/src/math/generic/fmull.cpp
    M libc/test/src/math/CMakeLists.txt
    R libc/test/src/math/FMulTest.h
    A libc/test/src/math/MulTest.h
    A libc/test/src/math/dmull_test.cpp
    A libc/test/src/math/f16mul_test.cpp
    A libc/test/src/math/f16mulf_test.cpp
    A libc/test/src/math/f16mull_test.cpp
    M libc/test/src/math/fmul_test.cpp
    A libc/test/src/math/fmull_test.cpp
    M libc/test/src/math/smoke/CMakeLists.txt
    R libc/test/src/math/smoke/FMulTest.h
    A libc/test/src/math/smoke/MulTest.h
    A libc/test/src/math/smoke/dmulf128_test.cpp
    A libc/test/src/math/smoke/dmull_test.cpp
    A libc/test/src/math/smoke/f16mul_test.cpp
    A libc/test/src/math/smoke/f16mulf128_test.cpp
    A libc/test/src/math/smoke/f16mulf_test.cpp
    A libc/test/src/math/smoke/f16mull_test.cpp
    M libc/test/src/math/smoke/fmul_test.cpp
    A libc/test/src/math/smoke/fmulf128_test.cpp
    A libc/test/src/math/smoke/fmull_test.cpp
    M libc/utils/MPFRWrapper/MPFRUtils.cpp
    M libc/utils/MPFRWrapper/MPFRUtils.h

  Log Message:
  -----------
  [libc][math][c23] Add {f,d}mul{l,f128} and f16mul{,f,l,f128} C23 math functions (#98972)

Part of #93566.
                
Fixes #94833.


  Commit: b37bdadbe784339e455915368a4893d3bd4a1193
      https://github.com/llvm/llvm-project/commit/b37bdadbe784339e455915368a4893d3bd4a1193
  Author: aaryanshukla <53713108+aaryanshukla at users.noreply.github.com>
  Date:   2024-07-18 (Thu, 18 Jul 2024)

  Changed paths:
    M libc/newhdrgen/class_implementation/classes/function.py
    M libc/newhdrgen/header.py
    R libc/newhdrgen/tests/output/test_small.h
    M libc/newhdrgen/tests/test_integration.py

  Log Message:
  -----------
  [libc] newheadergen: adding h_def_file arg to test (#99397)

- spacing with _NOEXCEPT


  Commit: 78e3bfc120c8a23e246f544a5e9fb122828a21a7
      https://github.com/llvm/llvm-project/commit/78e3bfc120c8a23e246f544a5e9fb122828a21a7
  Author: Vladislav Dzhidzhoev <vdzhidzhoev at accesssoftek.com>
  Date:   2024-07-18 (Thu, 18 Jul 2024)

  Changed paths:
    M lldb/packages/Python/lldbsuite/test/make/Makefile.rules

  Log Message:
  -----------
  [LLDB][test] Drop OS/HOST_OS detection code from Makefile.rules (#99535)

Remove commands for OS/HOST_OS detection from Makefile.rules to simplify
it, since logic for these variables has been implemented in
`lldb/packages/Python/lldbsuite/test/lldbplatformutil.py`
(7021e44b2f0e11717c0d82456bad0fed4a0b48f9).


  Commit: c5432d31cb339262451215f6cf9c356a514a1770
      https://github.com/llvm/llvm-project/commit/c5432d31cb339262451215f6cf9c356a514a1770
  Author: vporpo <vporpodas at google.com>
  Date:   2024-07-18 (Thu, 18 Jul 2024)

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

  Log Message:
  -----------
  [SandboxIR][Tracker] Track eraseFromParent() (#99431)

This patch adds tracking support for Instruction::eraseFromParent(). The
Instruction is not actually being erased, but instead it is detached
from the instruction list and drops its Use edges. The original
instruction position and Use edges are saved in the `EraseFromParent`
change object, and are being used during `revert()` to restore the
original state.


  Commit: 507c18b445ef88d985d95181db8107f669aed998
      https://github.com/llvm/llvm-project/commit/507c18b445ef88d985d95181db8107f669aed998
  Author: Piotr Zegar <me at piotrzegar.pl>
  Date:   2024-07-18 (Thu, 18 Jul 2024)

  Changed paths:
    M clang-tools-extra/clang-tidy/bugprone/UnusedReturnValueCheck.cpp
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/unused-return-value.rst

  Log Message:
  -----------
  [clang-tidy] Few tiny fixes after #99084

Update documentation, and correct configuration


  Commit: 5431a31f87387763cca8d014e7c07394bab7a1ad
      https://github.com/llvm/llvm-project/commit/5431a31f87387763cca8d014e7c07394bab7a1ad
  Author: Rafael Stahl <dummdoof-doof at web.de>
  Date:   2024-07-18 (Thu, 18 Jul 2024)

  Changed paths:
    M clang-tools-extra/docs/clang-tidy/checks/cppcoreguidelines/avoid-const-or-ref-data-members.rst
    M clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/avoid-const-or-ref-data-members.cpp

  Log Message:
  -----------
  [clang-tidy][NFC] Fix gsl::not_null template parameter (#99472)

`T` is expected to be a pointer type.

https://isocpp.github.io/CppCoreGuidelines/CppCoreGuidelines#Rf-nullptr


  Commit: 280d90d0fdb2734af6c071064c6f87a8fe8d06d0
      https://github.com/llvm/llvm-project/commit/280d90d0fdb2734af6c071064c6f87a8fe8d06d0
  Author: Changpeng Fang <changpeng.fang at amd.com>
  Date:   2024-07-18 (Thu, 18 Jul 2024)

  Changed paths:
    M clang/include/clang/Basic/BuiltinsAMDGPU.def
    M clang/lib/CodeGen/CGBuiltin.cpp
    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
    M llvm/lib/Target/AMDGPU/FLATInstructions.td
    M llvm/test/Analysis/UniformityAnalysis/AMDGPU/intrinsics.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

  Log Message:
  -----------
  AMDGPU: Add back half and bfloat support for global_load_tr16 pats (#99540)

half and bfloat are common types for 16-bit elements. The support of
them was original there and dropped due to some reasons. This work adds
the support of the float types back.


  Commit: 9527d77aefcf214944a4c8bd284dde3ffe9dff60
      https://github.com/llvm/llvm-project/commit/9527d77aefcf214944a4c8bd284dde3ffe9dff60
  Author: Angel Zhang <angel.zhang at amd.com>
  Date:   2024-07-18 (Thu, 18 Jul 2024)

  Changed paths:
    M mlir/lib/Dialect/SPIRV/Transforms/SPIRVConversion.cpp

  Log Message:
  -----------
  [mlir][spirv] Restructure code in `SPIRVConversion.cpp`. NFC. (#99393)


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

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

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

Summary:
The `compiler-rt` project wants `LLVM_CMAKE_DIR` but the
`llvm_ExternalProject_add` interface sets the `LLVM_CONFIG_PATH`. This
patch just makes the utility pass that as well.


  Commit: 5e8cd29d62a72ed18e7bc782554d7f14eccec0ee
      https://github.com/llvm/llvm-project/commit/5e8cd29d62a72ed18e7bc782554d7f14eccec0ee
  Author: Philip Reames <preames at rivosinc.com>
  Date:   2024-07-18 (Thu, 18 Jul 2024)

  Changed paths:
    A llvm/test/Transforms/VectorCombine/RISCV/vecreduce-of-cast.ll

  Log Message:
  -----------
  [RISCV] Add coverage for vector combine reduce(cast x) transformation

This covers both the existing trunc transform - basically checking
that it performs sanely with the RISCV cost model - and a planned
change to handle sext/zext as well.


  Commit: eed72d4381261bfe1acb693fb8751c05765c4831
      https://github.com/llvm/llvm-project/commit/eed72d4381261bfe1acb693fb8751c05765c4831
  Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
  Date:   2024-07-18 (Thu, 18 Jul 2024)

  Changed paths:
    M mlir/lib/Dialect/ArmSME/Transforms/TileAllocation.cpp
    M mlir/test/Dialect/ArmSME/tile-allocation-liveness.mlir

  Log Message:
  -----------
  [mlir][ArmSME] Support filling liveness 'holes' in the tile allocator (#98350)

Holes in a live range are points where the corresponding value does not
need to be in a tile/register. If the tile allocator keeps track of
these holes it can reuse tiles for more values (avoiding spills).

Take this simple example:

```mlir
func.func @example(%cond: i1) {
  %tileA = arm_sme.get_tile : vector<[4]x[4]xf32>
  cf.cond_br %cond, ^bb2, ^bb1
^bb1:
  // If we end up here we never use %tileA again!
  "test.some_use"(%tileB) : (vector<[4]x[4]xf32>) -> ()
  cf.br ^bb3
^bb2:
  "test.some_use"(%tileA) : (vector<[4]x[4]xf32>) -> ()
  cf.br ^bb3
^bb3:
  return
}
```

If you were to calculate the liveness of %tileA and %tileB. You'd see
there is a hole in the liveness of %tileA in bb1:

```
      %tileA  %tileB
^bb0:  Live
^bb1:          Live
^bb2:  Live
```

The tile allocator can make use of that hole and reuse the tile ID it
assigned to %tileA for %tileB.


  Commit: e2c3cd7f3d0cd40bd8506ab305573d61a1ae25d9
      https://github.com/llvm/llvm-project/commit/e2c3cd7f3d0cd40bd8506ab305573d61a1ae25d9
  Author: Changpeng Fang <changpeng.fang at amd.com>
  Date:   2024-07-18 (Thu, 18 Jul 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/FLATInstructions.td

  Log Message:
  -----------
  AMDGPU: Loop over the types for global_load_tr16 pats (NFC) (#99551)


  Commit: 82cca0c77e935b4972c31745d94edef616970b6c
      https://github.com/llvm/llvm-project/commit/82cca0c77e935b4972c31745d94edef616970b6c
  Author: Eli Friedman <efriedma at quicinc.com>
  Date:   2024-07-18 (Thu, 18 Jul 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/TargetCallingConv.h
    M llvm/lib/IR/Verifier.cpp
    A llvm/test/Verifier/byval-size-limit.ll
    M llvm/test/Verifier/param-align.ll
    M llvm/test/Verifier/param-attr-align.ll
    M llvm/test/Verifier/param-ret-align.ll

  Log Message:
  -----------
  [IR] Unify max alignment for arguments with generic max align. (#99257)

The 2^14 limit was completely arbitrary; the generic limit is still
arbitrary, but at least it's the same arbitrary limit as everything
else.

While I'm here, also add a verifier check for the ByValOrByRefSize.


  Commit: 892c58cf7490c219ff8fc4dc0d2497e062a9c665
      https://github.com/llvm/llvm-project/commit/892c58cf7490c219ff8fc4dc0d2497e062a9c665
  Author: Shilei Tian <i at tianshilei.me>
  Date:   2024-07-18 (Thu, 18 Jul 2024)

  Changed paths:
    M clang/include/clang/Basic/BuiltinsAMDGPU.def
    M clang/lib/CodeGen/CGBuiltin.cpp
    A clang/test/CodeGenOpenCL/builtins-amdgcn-raw-buffer-load.cl
    A clang/test/SemaOpenCL/builtins-amdgcn-raw-buffer-load-error.cl

  Log Message:
  -----------
  [Clang][AMDGPU] Add builtins for instrinsic `llvm.amdgcn.raw.ptr.buffer.load` (#99258)


  Commit: 52d947b5c14173b0aee96e419a04a49f83e5a283
      https://github.com/llvm/llvm-project/commit/52d947b5c14173b0aee96e419a04a49f83e5a283
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-07-18 (Thu, 18 Jul 2024)

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

  Log Message:
  -----------
  [LV] Remove unnecessary variable from InnerLoopVectorizer::createBitOrPointerCast. NFC

DstVTy is already a VectorType, we don't need to cast it again. This
used to be a cast to FixedVectorType that was changed to support
scalable vectors.


  Commit: eb7d54a84bd6b8f85ceb94d96d09b50b494a3f9c
      https://github.com/llvm/llvm-project/commit/eb7d54a84bd6b8f85ceb94d96d09b50b494a3f9c
  Author: Thurston Dang <thurston at google.com>
  Date:   2024-07-18 (Thu, 18 Jul 2024)

  Changed paths:
    A llvm/test/Instrumentation/MemorySanitizer/AArch64/neon_vst_origins.ll

  Log Message:
  -----------
  [msan] Precommit MSan Arm NEON vst tests with origin-tracking (#99555)

This adds an abridged copy of neon_vst.ll (from
https://github.com/llvm/llvm-project/commit/ff0821583eab1651ff126bbf4f881e6163b67435),
but with origin tracking enabled.

The test will be updated when MSan's Arm NEON support is improved (e.g.,
https://github.com/llvm/llvm-project/pull/99360).


  Commit: a0662176a9b40462aafbb17cd8eb8cf6a65e940e
      https://github.com/llvm/llvm-project/commit/a0662176a9b40462aafbb17cd8eb8cf6a65e940e
  Author: Iuri Chaer <iuri.chaer at gmail.com>
  Date:   2024-07-18 (Thu, 18 Jul 2024)

  Changed paths:
    M libcxx/benchmarks/CMakeLists.txt
    A libcxx/benchmarks/algorithms/set_intersection.bench.cpp
    M libcxx/docs/ReleaseNotes/19.rst
    M libcxx/include/__algorithm/iterator_operations.h
    M libcxx/include/__algorithm/lower_bound.h
    M libcxx/include/__algorithm/set_intersection.h
    M libcxx/test/std/algorithms/alg.sorting/alg.set.operations/set.intersection/ranges_set_intersection.pass.cpp
    A libcxx/test/std/algorithms/alg.sorting/alg.set.operations/set.intersection/set_intersection_complexity.pass.cpp
    M libcxx/test/std/iterators/iterator.primitives/range.iter.ops/range.iter.ops.advance/iterator_count.pass.cpp
    M libcxx/test/std/iterators/iterator.primitives/range.iter.ops/range.iter.ops.advance/iterator_count_sentinel.pass.cpp
    M libcxx/test/std/iterators/iterator.primitives/range.iter.ops/range.iter.ops.advance/iterator_sentinel.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.drop/begin.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.drop/types.h
    M libcxx/test/std/ranges/range.adaptors/range.transform/types.h
    M libcxx/test/support/test_iterators.h

  Log Message:
  -----------
   [libc++] Speed up set_intersection() by fast-forwarding over ranges of non-matching elements with one-sided binary search. (#75230)

One-sided binary search, aka meta binary search, has been in the public
domain for decades, and has the general advantage of being constant time
in the best case, with the downside of executing at most 2*log(N)
comparisons vs classic binary search's exact log(N). There are two
scenarios in which it really shines: the first one is when operating
over non-random-access iterators, because the classic algorithm requires
knowing the container's size upfront, which adds N iterator increments
to the complexity. The second one is when traversing the container in
order, trying to fast-forward to the next value: in that case the
classic algorithm requires at least O(N*log(N)) comparisons and, for
non-random-access iterators, O(N^2) iterator increments, whereas the
one-sided version will yield O(N) operations on both counts, with a
best-case of O(log(N)) comparisons which is very common in practice.


  Commit: b1fd6f0996a9d6e6ebfa0cc3df0fe499c5ccdf65
      https://github.com/llvm/llvm-project/commit/b1fd6f0996a9d6e6ebfa0cc3df0fe499c5ccdf65
  Author: aaryanshukla <53713108+aaryanshukla at users.noreply.github.com>
  Date:   2024-07-18 (Thu, 18 Jul 2024)

  Changed paths:
    M libc/CMakeLists.txt
    M libc/cmake/modules/LLVMLibCHeaderRules.cmake
    M libc/include/CMakeLists.txt

  Log Message:
  -----------
  [libc] newheadergen: cmake config newhdrgen (#99543)

- revert to revert for patch
https://github.com/llvm/llvm-project/pull/98828
- revert to revert https://github.com/llvm/llvm-project/pull/99410
- revert to revert https://github.com/llvm/llvm-project/pull/99413


  Commit: 05275b05ca58e4d015eea1503f120e6967ef1b91
      https://github.com/llvm/llvm-project/commit/05275b05ca58e4d015eea1503f120e6967ef1b91
  Author: Jon Roelofs <jonathan_roelofs at apple.com>
  Date:   2024-07-18 (Thu, 18 Jul 2024)

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

  Log Message:
  -----------
  fixup! [clang][test] Split AArch64 target feature checks across multiple lines. NFC (#99365)

Looks like sed on the ppc64-aix bot does not support the '\n' literal. Let's
try using `tr` to perform that substitution. Failing that, we can revert.


  Commit: 5c9fc3cdd7acae4ede998f2983e6107f3c0ea36a
      https://github.com/llvm/llvm-project/commit/5c9fc3cdd7acae4ede998f2983e6107f3c0ea36a
  Author: Schrodinger ZHU Yifan <yifanzhu at rochester.edu>
  Date:   2024-07-18 (Thu, 18 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
    A libc/src/__support/OSUtil/linux/pid.cpp
    A 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
    A libc/src/__support/threads/tid.h
    M libc/src/unistd/CMakeLists.txt
    M libc/src/unistd/getpid.h
    A libc/src/unistd/gettid.cpp
    A 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
    A libc/test/src/unistd/gettid_test.cpp

  Log Message:
  -----------
  [libc] implement cached process/thread identity (#98989)

migrated from https://github.com/llvm/llvm-project/pull/95965 due to
corrupted git history


  Commit: 415ca24f8e392bca6f6295e667be2f02211fc303
      https://github.com/llvm/llvm-project/commit/415ca24f8e392bca6f6295e667be2f02211fc303
  Author: Schrodinger ZHU Yifan <yifanzhu at rochester.edu>
  Date:   2024-07-18 (Thu, 18 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 "[libc] implement cached process/thread identity" (#99559)

Reverts llvm/llvm-project#98989


  Commit: af5352fe8e66e71ae381498745c0e52ca56478c6
      https://github.com/llvm/llvm-project/commit/af5352fe8e66e71ae381498745c0e52ca56478c6
  Author: Shilei Tian <i at tianshilei.me>
  Date:   2024-07-18 (Thu, 18 Jul 2024)

  Changed paths:
    M clang/include/clang/Basic/BuiltinsAMDGPU.def
    M clang/test/CodeGenOpenCL/builtins-amdgcn-raw-buffer-store.cl
    M clang/test/SemaOpenCL/builtins-amdgcn-raw-buffer-store-error.cl

  Log Message:
  -----------
  [Clang][AMDGPU] Use unsigned data type for `__builtin_amdgcn_raw_buffer_store_*` (#99546)


  Commit: 4272847546225bcf2e83e09e3a620bf286c058fd
      https://github.com/llvm/llvm-project/commit/4272847546225bcf2e83e09e3a620bf286c058fd
  Author: Michael Spencer <bigcheesegs at gmail.com>
  Date:   2024-07-18 (Thu, 18 Jul 2024)

  Changed paths:
    M clang/lib/Lex/DependencyDirectivesScanner.cpp
    M clang/unittests/Lex/DependencyDirectivesScannerTest.cpp

  Log Message:
  -----------
  [clang][deps] Don't treat ObjC method args as module directives (#97654)

`import:(type)name` is a method argument decl in ObjC, but the C++20
preprocessing rules say this is a preprocessing line.

Because the dependency directive scanner is not language dependent, this
patch extends the C++20 rule to exclude `module :` (which is never a
valid module decl anyway), and `import :` that is not followed by an
identifier.

This is ok to do because in C++20 mode the compiler will later error on
lines like this anyway, and the dependencies the scanner returns are
still correct.


  Commit: 06518cea3905556d8d1eea4088132ebb234bfdab
      https://github.com/llvm/llvm-project/commit/06518cea3905556d8d1eea4088132ebb234bfdab
  Author: Jon Roelofs <jonathan_roelofs at apple.com>
  Date:   2024-07-18 (Thu, 18 Jul 2024)

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

  Log Message:
  -----------
  Revert "[clang][test] Split AArch64 target feature checks across multiple lines. NFC (#99365)"

This reverts commit c0c4ad5d9a6e05e0b1f5f98ce2e08d479b281be8.

And the fixup broke another bot. Darn.

https://lab.llvm.org/buildbot/#/builders/46/builds/1896


  Commit: 719b2ac42e42807c9282052718cbc91e0cac930c
      https://github.com/llvm/llvm-project/commit/719b2ac42e42807c9282052718cbc91e0cac930c
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-07-18 (Thu, 18 Jul 2024)

  Changed paths:
    M libcxx/cmake/caches/Apple.cmake
    A libcxx/test/configs/apple-libc++-shared.cfg.in
    M libcxx/utils/ci/apple-install-libcxx.sh
    A libcxxabi/src/vendor/apple/shims.cpp
    A libcxxabi/test/configs/apple-libc++abi-shared.cfg.in

  Log Message:
  -----------
  [libc++] Allow testing Apple's system library as it is installed (#99086)

In order to test libc++ under the "Apple System Library" configuration,
we need to run the tests using DYLD_LIBRARY_PATH. This is required
because libc++ gets an install_name of /usr/lib when built as a system
library, which means that we must override the copy of libc++ used by
the whole process. This effectively reverts 2cf2f1b, which was the wrong
solution for the problem I was having.

Of course, this assumes that the just-built libc++ is sufficient to
replace the system library, which is not actually the case
out-of-the-box. Indeed, the system library contains a few symbols that
are not provided by the upstream library, leading to undefined symbols
when replacing the system library by the just-built one.

To solve this problem, we separately build shims that provide those
missing symbols and we manually link against them when we build
executables in the tests. While this is somewhat brittle, it provides a
localized and unintrusive way to allow testing the Apple system
configuration in an upstream environment, which has been a frequent
request.


  Commit: 50b5bb717ca5d2ec78587551bc90a8ddd0cc8983
      https://github.com/llvm/llvm-project/commit/50b5bb717ca5d2ec78587551bc90a8ddd0cc8983
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-07-18 (Thu, 18 Jul 2024)

  Changed paths:
    M libcxx/utils/ci/apple-install-libcxx.sh

  Log Message:
  -----------
  [libc++] Add comment about matching standard version in apple-install-libcxx

This was forgotten when I landed #99086


  Commit: 4f786c6823956f72ef0b9eee57bf0c462842b609
      https://github.com/llvm/llvm-project/commit/4f786c6823956f72ef0b9eee57bf0c462842b609
  Author: vporpo <vporpodas at google.com>
  Date:   2024-07-18 (Thu, 18 Jul 2024)

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

  Log Message:
  -----------
  [SandboxIR][Tracker] Track Instruction::removeFromParent() (#99541)

This patch adds the necessary functionality to the Tracker and to the
Sandbox IR API functions for tracking calls to removeFromParent().


  Commit: ded35c0c3ad371287e80872d6bd104ce3f7d2864
      https://github.com/llvm/llvm-project/commit/ded35c0c3ad371287e80872d6bd104ce3f7d2864
  Author: Philip Reames <preames at rivosinc.com>
  Date:   2024-07-18 (Thu, 18 Jul 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VectorCombine.cpp
    M llvm/test/Transforms/VectorCombine/RISCV/vecreduce-of-cast.ll

  Log Message:
  -----------
  [vectorcombine] Pull sext/zext through reduce.or/and/xor (#99548)

This extends the existing foldTruncFromReductions transform to handle
sext and zext as well. This is only legal for the bitwise reductions
(and/or/xor) and not the arithmetic ones (add, mul). Use the same
costing decision to drive whether we do the transform.


  Commit: 19c9a1c2fd2c3849439bca2ba5084dada4d1f47f
      https://github.com/llvm/llvm-project/commit/19c9a1c2fd2c3849439bca2ba5084dada4d1f47f
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-07-18 (Thu, 18 Jul 2024)

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

  Log Message:
  -----------
  [LAA] Include IndirectUnsafe in ::isPossiblyBackward.

Similarly to Unknown, IndirectUnsafe should also be considered possibly
backward, as it may be a backwards dependency e.g. via loading
different base pointers.

This also brings isPossiblyBackward in line with
Dependence::isSafeForVectorization. At the moment this can't be tested,
as it is not possible to write a test with an AddRec that is based on a
loop varying value. But this may change in the future and may cause
mis-compiles in the future.


  Commit: 2ec1a39bcb1ab893f4b6cde7fc9e24cfdff0aeb6
      https://github.com/llvm/llvm-project/commit/2ec1a39bcb1ab893f4b6cde7fc9e24cfdff0aeb6
  Author: Peter Klausler <35819229+klausler at users.noreply.github.com>
  Date:   2024-07-18 (Thu, 18 Jul 2024)

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

  Log Message:
  -----------
  [flang][preprocessor] Handle initial "MACRO&" with no space (#98684)

The prescanner checks lines that begin with a keyword macro name to see
whether they should be treated as a comment or compiler directive
instead of a source line. This fails when the potential keyword macro
name is extended with identifier characters via Fortran line
continuation. Disable line continuation during this check.


  Commit: f61c9a9485cc359cdd0262e66840e095dbc246c2
      https://github.com/llvm/llvm-project/commit/f61c9a9485cc359cdd0262e66840e095dbc246c2
  Author: OverMighty <its.overmighty at gmail.com>
  Date:   2024-07-18 (Thu, 18 Jul 2024)

  Changed paths:
    M libc/utils/MPFRWrapper/CMakeLists.txt

  Log Message:
  -----------
  [libc][CMake] Set library type of libcMPFRWrapper to STATIC (#99527)

Fixes linker errors due to hidden symbols when running CMake with
-DBUILD_SHARED_LIBS=ON.


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

  Changed paths:
    M llvm/test/MC/AArch64/elf-reloc-ptrauth.s

  Log Message:
  -----------
  [AArch64,test] Remove over reliance on section offsets and symbol indexes


  Commit: 99faa038c66872f6507dfe1d5aa470ba13e58614
      https://github.com/llvm/llvm-project/commit/99faa038c66872f6507dfe1d5aa470ba13e58614
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-07-18 (Thu, 18 Jul 2024)

  Changed paths:
    M mlir/lib/Dialect/ArmSME/Transforms/TileAllocation.cpp

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

This patch fixes:

  mlir/lib/Dialect/ArmSME/Transforms/TileAllocation.cpp:621:16: error:
  unused variable 'removed' [-Werror,-Wunused-variable]


  Commit: 6c6baf019a25710cdc3c3971b09cd6332d0379c0
      https://github.com/llvm/llvm-project/commit/6c6baf019a25710cdc3c3971b09cd6332d0379c0
  Author: Jon Roelofs <jonathan_roelofs at apple.com>
  Date:   2024-07-18 (Thu, 18 Jul 2024)

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

  Log Message:
  -----------
  Revert "[clang][test] Split AArch64 target feature checks across multiple lines. NFC (#99365)"

This reverts commit 06518cea3905556d8d1eea4088132ebb234bfdab.
This reverts commit 05275b05ca58e4d015eea1503f120e6967ef1b91.
This reverts commit c0c4ad5d9a6e05e0b1f5f98ce2e08d479b281be8.


  Commit: 05bce3f079b677edd0efd28e3923f4776ffb8b59
      https://github.com/llvm/llvm-project/commit/05bce3f079b677edd0efd28e3923f4776ffb8b59
  Author: Chenguang Wang <w3cing at gmail.com>
  Date:   2024-07-18 (Thu, 18 Jul 2024)

  Changed paths:
    M mlir/lib/Dialect/ArmSME/Transforms/TileAllocation.cpp

  Log Message:
  -----------
  [mlir][ArmSME] Suppress potential unused warning (#99573)

When building in release mode, the assert will be dropped, making
`remove` unused.


  Commit: a41a4b8feda789529e4e927d9d6a04b7be8e9664
      https://github.com/llvm/llvm-project/commit/a41a4b8feda789529e4e927d9d6a04b7be8e9664
  Author: Chenguang Wang <w3cing at gmail.com>
  Date:   2024-07-18 (Thu, 18 Jul 2024)

  Changed paths:
    M mlir/lib/Dialect/ArmSME/Transforms/TileAllocation.cpp

  Log Message:
  -----------
  Revert "[mlir][ArmSME] Suppress potential unused warning (#99573)" (#99578)

This reverts commit 05bce3f079b677edd0efd28e3923f4776ffb8b59.

The work was already done in 99faa03.


  Commit: 8be714b6724f1f2f57442f2cdd3a0625c053d872
      https://github.com/llvm/llvm-project/commit/8be714b6724f1f2f57442f2cdd3a0625c053d872
  Author: Ilya Leoshkevich <iii at linux.ibm.com>
  Date:   2024-07-18 (Thu, 18 Jul 2024)

  Changed paths:
    M compiler-rt/test/sanitizer_common/TestCases/Posix/sanitizer_set_report_path_test.cpp

  Log Message:
  -----------
  [sanitizer] Fix running sanitizer_set_report_path_test on Android (#99469)

sanitizer_set_report_path_test outputs the following on an Android
builder [1]:

ERROR: Can't create directory:
/data/local/tmp/Output/var/lib/buildbot/sanitizer-buildbot6/sanitizer-x86_64-linux-android/build/compiler_rt_build_android_arm/test/sanitizer_common/asan-arm-Android/Posix/Output/sanitizer_set_report_path_test.cpp.tmp
Path
/data/local/tmp/Output/var/lib/buildbot/sanitizer-buildbot6/sanitizer-x86_64-linux-android/build/compiler_rt_build_android_arm/test/sanitizer_common/asan-arm-Android/Posix/Output/sanitizer_set_report_path_test.cpp.tmp.report_path/report.24954

The order of messages is reversed. 

The test can use strcmp+assert instead of CHECK for `__sanitizer_get_report_path` output.

[1]
https://lab.llvm.org/buildbot/#/builders/186/builds/703/steps/26/logs/stdio

---------

Co-authored-by: Vitaly Buka <vitalybuka at gmail.com>


  Commit: 1f6f97e2b64a9c4c51712d32b53e07d2a20e0cc0
      https://github.com/llvm/llvm-project/commit/1f6f97e2b64a9c4c51712d32b53e07d2a20e0cc0
  Author: Bill Wendling <5993918+bwendling at users.noreply.github.com>
  Date:   2024-07-18 (Thu, 18 Jul 2024)

  Changed paths:
    M clang/lib/CodeGen/CGExpr.cpp
    M clang/test/CodeGen/attr-counted-by.c

  Log Message:
  -----------
  [Clang] Loop over FieldDecls instead of all Decls (#99574)

Only FieldDecls are important when determining GEP indices. A struct
defined within another struct has the same semantics as if it were
defined outside of the struct. So there's no need to look into
RecordDecls that aren't a field.

See commit 5bcf31ebfad8 ("[Clang] Loop over FieldDecls instead of all
Decls (#89453)")

Fixes 2039.


  Commit: f1a8db1a1f93a7e921e10c362a659712a4be2a33
      https://github.com/llvm/llvm-project/commit/f1a8db1a1f93a7e921e10c362a659712a4be2a33
  Author: Michael Jones <michaelrj at google.com>
  Date:   2024-07-18 (Thu, 18 Jul 2024)

  Changed paths:
    M libc/include/CMakeLists.txt
    R libc/newhdrgen/yaml/arpa/arpa_inet.yaml
    A libc/newhdrgen/yaml/arpa/inet.yaml
    R libc/newhdrgen/yaml/gpu/gpu_rpc.yaml
    A libc/newhdrgen/yaml/gpu/rpc.yaml
    A libc/newhdrgen/yaml/sys/auxv.yaml
    A libc/newhdrgen/yaml/sys/epoll.yaml
    A libc/newhdrgen/yaml/sys/ioctl.yaml
    A libc/newhdrgen/yaml/sys/mman.yaml
    A libc/newhdrgen/yaml/sys/prctl.yaml
    A libc/newhdrgen/yaml/sys/random.yaml
    A libc/newhdrgen/yaml/sys/resource.yaml
    A libc/newhdrgen/yaml/sys/select.yaml
    A libc/newhdrgen/yaml/sys/sendfile.yaml
    A libc/newhdrgen/yaml/sys/socket.yaml
    A libc/newhdrgen/yaml/sys/stat.yaml
    A libc/newhdrgen/yaml/sys/statvfs.yaml
    R libc/newhdrgen/yaml/sys/sys_auxv.yaml
    R libc/newhdrgen/yaml/sys/sys_epoll.yaml
    R libc/newhdrgen/yaml/sys/sys_ioctl.yaml
    R libc/newhdrgen/yaml/sys/sys_mman.yaml
    R libc/newhdrgen/yaml/sys/sys_prctl.yaml
    R libc/newhdrgen/yaml/sys/sys_random.yaml
    R libc/newhdrgen/yaml/sys/sys_resource.yaml
    R libc/newhdrgen/yaml/sys/sys_select.yaml
    R libc/newhdrgen/yaml/sys/sys_sendfile.yaml
    R libc/newhdrgen/yaml/sys/sys_socket.yaml
    R libc/newhdrgen/yaml/sys/sys_stat.yaml
    R libc/newhdrgen/yaml/sys/sys_statvfs.yaml
    R libc/newhdrgen/yaml/sys/sys_syscall.yaml
    R libc/newhdrgen/yaml/sys/sys_time.yaml
    R libc/newhdrgen/yaml/sys/sys_types.yaml
    R libc/newhdrgen/yaml/sys/sys_utsname.yaml
    R libc/newhdrgen/yaml/sys/sys_wait.yaml
    A libc/newhdrgen/yaml/sys/syscall.yaml
    A libc/newhdrgen/yaml/sys/time.yaml
    A libc/newhdrgen/yaml/sys/types.yaml
    A libc/newhdrgen/yaml/sys/utsname.yaml
    A libc/newhdrgen/yaml/sys/wait.yaml

  Log Message:
  -----------
  [libc][newhdrgen] Remove redundant yaml prefixes (#99581)

Since the yaml files are already organized into folders, the name of the
file doesn't also need to be prefixed by what folder it's in.


  Commit: 202785708ed0ff11770f8ae8603514d2c9a54bd9
      https://github.com/llvm/llvm-project/commit/202785708ed0ff11770f8ae8603514d2c9a54bd9
  Author: Peter Klausler <35819229+klausler at users.noreply.github.com>
  Date:   2024-07-18 (Thu, 18 Jul 2024)

  Changed paths:
    M flang/runtime/unit.cpp

  Log Message:
  -----------
  [flang][runtime] Clear leftTabLimit at in FinishReadingRecord (#98822)

ExternalFileUnit::FinishReadingRecord() is called at the end of a READ
statement, unless the read is non-advancing and there was no error. In
the event of an erroneous non-advancing read, however,
FinishReadingRecord() leaves ConnectionState::leftTabLimit inhabited by
a value, leaving the impression that the *next* record is undergoing a
non-advancing operation, and this cause the next operation to fail. In
the test case in the reported bug, the next operation is a BACKSPACE,
and it ends up doing nothing. The fix is to always reset leftTabLimit in
FinishReadingRecord.

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


  Commit: ef94732b4fa0512a3a635766b872c1574a1aade4
      https://github.com/llvm/llvm-project/commit/ef94732b4fa0512a3a635766b872c1574a1aade4
  Author: Connie <60797237+connieyzhu at users.noreply.github.com>
  Date:   2024-07-18 (Thu, 18 Jul 2024)

  Changed paths:
    M llvm/utils/lit/lit/builtin_commands/cat.py

  Log Message:
  -----------
  [llvm-lit] Resolve TypeError in built-in cat -v implementation (#98363)

When using -v in lit's internal implementation of cat, there is a
TypeError when the file data is passed into convertToCaretAndMNotation()
as a str, because bytearray() requires an encoded string. This patch
encodes the str before passing it through bytearray().


  Commit: 6c09a9bf6c6247299b53833602e6bb312dfda555
      https://github.com/llvm/llvm-project/commit/6c09a9bf6c6247299b53833602e6bb312dfda555
  Author: Peter Klausler <35819229+klausler at users.noreply.github.com>
  Date:   2024-07-18 (Thu, 18 Jul 2024)

  Changed paths:
    M flang/lib/Semantics/expression.cpp
    M flang/test/Semantics/array-constr-values.f90
    M flang/test/Semantics/assign10.f90

  Log Message:
  -----------
  [flang] Check assignment conformance for derived types (#99059)

Derived type assignment checking needs to account for the possibility of
derived assignment. The implementation was checking compile-time
conformance errors only on the path for assignments of intrinsic types.
Add a static array conformance check in the derived type flow once it
has been established that no defined assignment exists.

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


  Commit: 0004ca670a960d3573137679b3c67a7b3932530a
      https://github.com/llvm/llvm-project/commit/0004ca670a960d3573137679b3c67a7b3932530a
  Author: RoseZhang03 <rosezhang at google.com>
  Date:   2024-07-18 (Thu, 18 Jul 2024)

  Changed paths:
    M libc/config/linux/api.td
    M libc/config/linux/x86_64/headers.txt
    M libc/newhdrgen/yaml/math.yaml
    M libc/newhdrgen/yaml/sys/statvfs.yaml
    M libc/src/sys/statvfs/linux/CMakeLists.txt

  Log Message:
  -----------
  [libc] Removed __LIBC_CONST_ATTR attribute and updated math.yaml with the new math functions (#99571)

- deleted attribute from fabs function
- added math functions from #98972
- also updated statvfs files so that it can be generated


  Commit: 40ed6ba016ea59106e18e610cc17df43e0192ee4
      https://github.com/llvm/llvm-project/commit/40ed6ba016ea59106e18e610cc17df43e0192ee4
  Author: Peter Klausler <35819229+klausler at users.noreply.github.com>
  Date:   2024-07-18 (Thu, 18 Jul 2024)

  Changed paths:
    M flang/docs/Extensions.md
    A flang/test/Semantics/parent-comp-name.f90

  Log Message:
  -----------
  [flang][NFC] Document an intentional violation of the standard (#99073)

The Fortran standard committees passed an "interp" request at their June
2024 meetings that is distinct from nearly every other Fortran compiler
that I tried (6) in an an ambiguous case (parent component naming when
the base type has been renamed via USE association). Document this case
in flang/docs/Extensions.md as an intentional instance of
non-conformance chosen for portability and better usability.


  Commit: adacb5010f5ca6e923b3cf2d8ea47cbaab96099d
      https://github.com/llvm/llvm-project/commit/adacb5010f5ca6e923b3cf2d8ea47cbaab96099d
  Author: Michael Jones <michaelrj at google.com>
  Date:   2024-07-18 (Thu, 18 Jul 2024)

  Changed paths:
    M libc/cmake/modules/LLVMLibCHeaderRules.cmake

  Log Message:
  -----------
  [libc] Restore DECLS_FILE_PATH property (#99583)

The DECLS_FILE_PATH property is supposed to be set on the targets for
the generated headers for the GPU build installation. It got missed when
creating the cmake rule for new headergen.


  Commit: c675a9be63b67682477e5cbdc01c450f66bbc59a
      https://github.com/llvm/llvm-project/commit/c675a9be63b67682477e5cbdc01c450f66bbc59a
  Author: pcc <peter at pcc.me.uk>
  Date:   2024-07-18 (Thu, 18 Jul 2024)

  Changed paths:
    M llvm/include/llvm/Object/ArchiveWriter.h
    M llvm/lib/Object/ArchiveWriter.cpp
    M llvm/test/Object/archive-malformed-object.test

  Log Message:
  -----------
  Object: Don't error out on malformed bitcode files.

An error reading a bitcode file most likely indicates that the file
was created by a compiler from the future. Normally we don't try to
implement forwards compatibility for bitcode files, but when creating
an archive we can implement best-effort forwards compatibility by
treating the file as a blob and not creating symbol index entries for
it. lld and mold ignore the archive symbol index, so provided that
you use one of these linkers, LTO will work as long as lld or the
gold plugin is newer than the compiler. We only ignore errors if the
archive format is one that is supported by a linker that is known to
ignore the index, otherwise there's no chance of this working so we
may as well error out. We print a warning on read failure so that
users of linkers that rely on the symbol index can diagnose the issue.

This is the same behavior as GNU ar when the linker plugin returns
an error when reading the input file. If the bitcode file is actually
malformed, it will be diagnosed at link time.

Reviewers: MaskRay, dwblaikie, jh7370

Reviewed By: MaskRay, dwblaikie, jh7370

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


  Commit: 433e09cf257526a24afc98326bd60fbf09923359
      https://github.com/llvm/llvm-project/commit/433e09cf257526a24afc98326bd60fbf09923359
  Author: Keith Smiley <keithbsmiley at gmail.com>
  Date:   2024-07-18 (Thu, 18 Jul 2024)

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

  Log Message:
  -----------
  [bazel] Add filegroups for MLIR bindings sources (#98396)

This can be useful if downstream projects configure their pybind
differently, similar to how local_config_python isn't defined here.


  Commit: e73d51d3c8ea61fa34658f22147e65f95411eca2
      https://github.com/llvm/llvm-project/commit/e73d51d3c8ea61fa34658f22147e65f95411eca2
  Author: Peter Klausler <35819229+klausler at users.noreply.github.com>
  Date:   2024-07-18 (Thu, 18 Jul 2024)

  Changed paths:
    M flang/lib/Semantics/definable.cpp
    A flang/test/Semantics/associate03.f90

  Log Message:
  -----------
  [flang] ASSOCIATE/SELECT TYPE entities aren't pointer/allocatable (#99364)

Fix what seems to be a regression in semantics in definability checking:
the construct entities of ASSOCIATE and SELECT TYPE constructs are never
pointers or allocatables, even when their selectors are so. SELECT RANK
construct entities, however, can be pointers or allocatables.


  Commit: 043aca3990e3d47a25777f83569260aa4d822ae5
      https://github.com/llvm/llvm-project/commit/043aca3990e3d47a25777f83569260aa4d822ae5
  Author: RoseZhang03 <rosezhang at google.com>
  Date:   2024-07-18 (Thu, 18 Jul 2024)

  Changed paths:
    R libc/newhdrgen/class_implementation/classes/include.py
    M libc/newhdrgen/gpu_headers.py
    M libc/newhdrgen/header.py
    M libc/newhdrgen/yaml_to_classes.py

  Log Message:
  -----------
  [libc] newhdrgen: removed Include class (#99584)

Include class is not used (includes are made through Macro class, Type
class, and imports from .h.def files).


  Commit: 0684db30a1e3226a0bfe4c5d839d1355a66ea4ba
      https://github.com/llvm/llvm-project/commit/0684db30a1e3226a0bfe4c5d839d1355a66ea4ba
  Author: Peter Klausler <35819229+klausler at users.noreply.github.com>
  Date:   2024-07-18 (Thu, 18 Jul 2024)

  Changed paths:
    M flang/lib/Parser/Fortran-parsers.cpp
    A flang/test/Semantics/struct03.f90

  Log Message:
  -----------
  [flang] A nested STRUCTURE must declare entities (#99379)

When a DEC legacy STRUCTURE definition appears within another, its
STRUCTURE statement must also declare some components of the enclosing
structure.

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


  Commit: bda1893a62b2081780fe1c000d6447b73d42aa2c
      https://github.com/llvm/llvm-project/commit/bda1893a62b2081780fe1c000d6447b73d42aa2c
  Author: Dmitriy Chestnykh <dm.chestnykh at gmail.com>
  Date:   2024-07-18 (Thu, 18 Jul 2024)

  Changed paths:
    M compiler-rt/lib/sanitizer_common/sanitizer_linux.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

  Log Message:
  -----------
  [compiler-rt] Add `DumpAllRegisters` impl (#99049)

- Add implementation for x86_64 and linux
- Add test

The output is like

==XXYYZZ==Register values:
rax = 0x...  rbx = 0x...  rcx = 0x...  rdx = 0x...
rdi = 0x...  rsi = 0x...  rbp = 0x...  rsp = 0x...
 r8 = 0x...   r9 = 0x...  r10 = 0x...  r11 = 0x...
r12 = 0x...  r13 = 0x...  r14 = 0x...  r15 = 0x...


  Commit: 996d31c7ba841fdc3bd375f3fed4d8324618425b
      https://github.com/llvm/llvm-project/commit/996d31c7ba841fdc3bd375f3fed4d8324618425b
  Author: Sam James <sam at gentoo.org>
  Date:   2024-07-19 (Fri, 19 Jul 2024)

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

  Log Message:
  -----------
  [msan] Fix goo.gl link in comment for Valgrind paper

goo.gl is going away: https://developers.googleblog.com/en/google-url-shortener-links-will-no-longer-be-available/

Fix goo.gl link from:
- http://goo.gl/QKbem
+ https://static.usenix.org/event/usenix05/tech/general/full_papers/seward/seward_html/usenix2005.html
and reflow the comment a bit to make it look a bit better after the URL change,
although it's not perfect now.

Committed as obvious.

Bug: https://github.com/llvm/llvm-project/issues/99586


  Commit: 4120570dc408a6ccc7133b4bdbaf5cf6c4af9db7
      https://github.com/llvm/llvm-project/commit/4120570dc408a6ccc7133b4bdbaf5cf6c4af9db7
  Author: Jacob Lalonde <jalalonde at fb.com>
  Date:   2024-07-18 (Thu, 18 Jul 2024)

  Changed paths:
    M lldb/bindings/headers.swig
    A lldb/bindings/interface/SBSaveCoreOptionsDocstrings.i
    M lldb/bindings/interfaces.swig
    M lldb/include/lldb/API/LLDB.h
    M lldb/include/lldb/API/SBDefines.h
    M lldb/include/lldb/API/SBError.h
    M lldb/include/lldb/API/SBFileSpec.h
    M lldb/include/lldb/API/SBProcess.h
    A lldb/include/lldb/API/SBSaveCoreOptions.h
    M lldb/include/lldb/Core/PluginManager.h
    A lldb/include/lldb/Symbol/SaveCoreOptions.h
    M lldb/include/lldb/lldb-private-interfaces.h
    M lldb/source/API/CMakeLists.txt
    M lldb/source/API/SBProcess.cpp
    A lldb/source/API/SBSaveCoreOptions.cpp
    M lldb/source/Commands/CommandObjectProcess.cpp
    M lldb/source/Core/PluginManager.cpp
    M lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp
    M lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.h
    M lldb/source/Plugins/ObjectFile/Minidump/ObjectFileMinidump.cpp
    M lldb/source/Plugins/ObjectFile/Minidump/ObjectFileMinidump.h
    M lldb/source/Plugins/ObjectFile/PECOFF/ObjectFilePECOFF.cpp
    M lldb/source/Plugins/ObjectFile/PECOFF/ObjectFilePECOFF.h
    M lldb/source/Plugins/ObjectFile/PECOFF/WindowsMiniDump.cpp
    M lldb/source/Plugins/ObjectFile/PECOFF/WindowsMiniDump.h
    M lldb/source/Symbol/CMakeLists.txt
    A lldb/source/Symbol/SaveCoreOptions.cpp
    M lldb/test/API/functionalities/process_save_core/TestProcessSaveCore.py
    M lldb/test/API/functionalities/process_save_core_minidump/TestProcessSaveCoreMinidump.py
    A lldb/test/API/python_api/sbsavecoreoptions/TestSBSaveCoreOptions.py

  Log Message:
  -----------
  [LLDB][SaveCore] Add SBSaveCoreOptions Object, and SBProcess::SaveCore() overload (#98403)

This PR adds `SBSaveCoreOptions`, which is a container class for options
when LLDB is taking coredumps. For this first iteration this container
just keeps parity with the extant API of `file, style, plugin`. In the
future this options object can be extended to allow users to take a
subset of their core dumps.


  Commit: 9e4c236650ac8220c4121ceb335de7df6ec4cb36
      https://github.com/llvm/llvm-project/commit/9e4c236650ac8220c4121ceb335de7df6ec4cb36
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2024-07-19 (Fri, 19 Jul 2024)

  Changed paths:
    M llvm/utils/gn/secondary/lldb/source/API/BUILD.gn
    M llvm/utils/gn/secondary/lldb/source/Symbol/BUILD.gn

  Log Message:
  -----------
  [gn build] Port 4120570dc408


  Commit: 71ab0dc6f02b7fd07de272dfcd67ccdb2399ab4f
      https://github.com/llvm/llvm-project/commit/71ab0dc6f02b7fd07de272dfcd67ccdb2399ab4f
  Author: Sam James <sam at gentoo.org>
  Date:   2024-07-19 (Fri, 19 Jul 2024)

  Changed paths:
    M llvm/docs/CompileCudaWithLLVM.rst

  Log Message:
  -----------
  [docs] Fix goo.gl link in comment for 'Straight-line scalar optimizations' paper

goo.gl is going away: https://developers.googleblog.com/en/google-url-shortener-links-will-no-longer-be-available/

Fix goo.gl link from:
- https://goo.gl/4Rb9As
+ https://docs.google.com/document/d/1momWzKFf4D6h8H3YlfgKQ3qeZy5ayvMRh6yR-Xn2hUE

Committed as obvious.

Bug: https://github.com/llvm/llvm-project/issues/99586


  Commit: 59441f29323c37c7d0b21bcdd3db96506d1b24d2
      https://github.com/llvm/llvm-project/commit/59441f29323c37c7d0b21bcdd3db96506d1b24d2
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2024-07-18 (Thu, 18 Jul 2024)

  Changed paths:
    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:
  -----------
  [sanitizer] Use strict-whitespace in tests


  Commit: 914a00a9c94bf1a0b857abdc5a06857914cc46c7
      https://github.com/llvm/llvm-project/commit/914a00a9c94bf1a0b857abdc5a06857914cc46c7
  Author: Keith Smiley <keithbsmiley at gmail.com>
  Date:   2024-07-18 (Thu, 18 Jul 2024)

  Changed paths:
    M utils/bazel/WORKSPACE
    M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
    A utils/bazel/third_party_build/pybind.BUILD

  Log Message:
  -----------
  [bazel] Add support for pybind (#98398)

Previously these targets were disabled, but with a relatively new
rules_python we can build these pointing at a hermetic python, which
allows us to build these safely. Users can still access the files
directly if they need to customize how these are built.


  Commit: f304b883730785a204a5197dd407305b5b1dfaaa
      https://github.com/llvm/llvm-project/commit/f304b883730785a204a5197dd407305b5b1dfaaa
  Author: Keith Smiley <keithbsmiley at gmail.com>
  Date:   2024-07-18 (Thu, 18 Jul 2024)

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

  Log Message:
  -----------
  [bazel] Port #98403 (#99592)


  Commit: c0725804e6bc0f1b418db096099897e7fb029a0e
      https://github.com/llvm/llvm-project/commit/c0725804e6bc0f1b418db096099897e7fb029a0e
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-07-18 (Thu, 18 Jul 2024)

  Changed paths:
    M llvm/unittests/ADT/SetOperationsTest.cpp

  Log Message:
  -----------
  [ADT] Add unit tests for set_subtract (#99561)

This patch adds a couple of unit tests:

- SetSubtractSmallPtrSet exercises the code path involving remove_if,
  added in d772cdd6279de1e578dfdfca7432327a1806c659.  Note that
  SmallPtrSet supports remove_if.

- SetSubtractSmallVector exercises the code path involving
  S1.erase(*SI) and ensures that set_subtract continues to accept S2
  being a vector, which does not have contains.


  Commit: bf4347b3da31625ce1ae2dd4ffb5c557072e03c0
      https://github.com/llvm/llvm-project/commit/bf4347b3da31625ce1ae2dd4ffb5c557072e03c0
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2024-07-18 (Thu, 18 Jul 2024)

  Changed paths:
    M compiler-rt/lib/sanitizer_common/sanitizer_allocator_primary64.h
    M compiler-rt/lib/sanitizer_common/sanitizer_coverage_libcdep_new.cpp
    M compiler-rt/lib/sanitizer_common/sanitizer_libignore.cpp
    M compiler-rt/lib/sanitizer_common/sanitizer_mac.cpp
    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_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/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

  Log Message:
  -----------
  [sanitizer_common] Use %p to print addresses (#98578)

Pointers print more leading zeroes for better alignment.


  Commit: 467f96951c44fc7851e296ad76228503a49d7675
      https://github.com/llvm/llvm-project/commit/467f96951c44fc7851e296ad76228503a49d7675
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-07-18 (Thu, 18 Jul 2024)

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

  Log Message:
  -----------
  [compiler-rt] Fix a warning

This patch fixes:

  compiler-rt/lib/sanitizer_common/sanitizer_tls_get_addr.cpp:126:72:
  error: format specifies type 'void *' but the argument has type
  'uptr *' (aka 'unsigned long *') [-Werror,-Wformat-pedantic]


  Commit: d4b28fb7516c5a5ecded4154c207288da1949a6b
      https://github.com/llvm/llvm-project/commit/d4b28fb7516c5a5ecded4154c207288da1949a6b
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2024-07-18 (Thu, 18 Jul 2024)

  Changed paths:
    M compiler-rt/cmake/base-config-ix.cmake
    M compiler-rt/test/CMakeLists.txt
    M compiler-rt/test/asan/CMakeLists.txt
    M compiler-rt/test/ctx_profile/CMakeLists.txt
    M compiler-rt/test/fuzzer/CMakeLists.txt
    M compiler-rt/test/gwp_asan/CMakeLists.txt
    M compiler-rt/test/interception/CMakeLists.txt
    M compiler-rt/test/memprof/CMakeLists.txt
    M compiler-rt/test/msan/CMakeLists.txt
    M compiler-rt/test/nsan/CMakeLists.txt
    M compiler-rt/test/rtsan/CMakeLists.txt
    M compiler-rt/test/sanitizer_common/CMakeLists.txt
    M compiler-rt/test/scudo/standalone/CMakeLists.txt
    M compiler-rt/test/tsan/CMakeLists.txt

  Log Message:
  -----------
  [compiler-rt] Cleanup use of COMPILER_RT_INCLUDE_TESTS (#98246)

1. Move checks into parent test/CMakeLists.txt
2. COMPILER_RT_INCLUDE_TESTS disable both lit and
   gtests. Before it was very inconsistent between
   sanitizers.


  Commit: 98ebdd0ca9a72c072a1dbe1af2fa7f1adcbb09ae
      https://github.com/llvm/llvm-project/commit/98ebdd0ca9a72c072a1dbe1af2fa7f1adcbb09ae
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2024-07-18 (Thu, 18 Jul 2024)

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

  Log Message:
  -----------
  [NFC][sanitizer] Fix `unused variable 'RegName'` warning


  Commit: cbbd15323469a70bf7d5f1d6e1177bb7f531ea2d
      https://github.com/llvm/llvm-project/commit/cbbd15323469a70bf7d5f1d6e1177bb7f531ea2d
  Author: vporpo <vporpodas at google.com>
  Date:   2024-07-18 (Thu, 18 Jul 2024)

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

  Log Message:
  -----------
  [SandboxIR][Tracker] Track Instruction::moveBefore() (#99568)

This implements tracking of moving instrs with `moveBefore()`.


  Commit: 962d018234cb8c94e387fe3950cd030658850541
      https://github.com/llvm/llvm-project/commit/962d018234cb8c94e387fe3950cd030658850541
  Author: Brian Cain <bcain at quicinc.com>
  Date:   2024-07-18 (Thu, 18 Jul 2024)

  Changed paths:
    M clang/include/clang/Basic/DiagnosticDriverKinds.td
    M clang/lib/Driver/ToolChains/Hexagon.cpp
    M clang/test/Driver/hexagon-toolchain-linux.c

  Log Message:
  -----------
  [clang] [hexagon] handle --unwindlib arg (#99552)

Signed-off-by: Brian Cain <bcain at quicinc.com>


  Commit: e1d0913a85d4034e875cd93ab531c2001afe6620
      https://github.com/llvm/llvm-project/commit/e1d0913a85d4034e875cd93ab531c2001afe6620
  Author: Jordan Rupprecht <rupprecht at google.com>
  Date:   2024-07-18 (Thu, 18 Jul 2024)

  Changed paths:
    M utils/bazel/WORKSPACE

  Log Message:
  -----------
  [bazel] Replace git_repository with http_archive. (#99422)

The current git_repository usage points to tags, which leads to warnings
that the build may not be reproducable due to not using a git sha.

The docs for
[git_repository](https://bazel.build/rules/lib/repo/git#git_repository)
recommend using `http_archive`, so switch to that instead. Also bump to
newer versions for these two repos.


  Commit: 1df2e0c344f0ddf7e09a9c89eba6bbee52142344
      https://github.com/llvm/llvm-project/commit/1df2e0c344f0ddf7e09a9c89eba6bbee52142344
  Author: Allen <zhongyunde at huawei.com>
  Date:   2024-07-19 (Fri, 19 Jul 2024)

  Changed paths:
    M clang/lib/CodeGen/CGBuiltin.cpp
    M clang/test/CodeGen/math-libcalls-tbaa.cpp

  Log Message:
  -----------
  [clang codegen] Emit int TBAA metadata on FP math libcall expf (#96025)

Base on the discussion
https://discourse.llvm.org/t/fp-can-we-add-pure-attribute-for-math-library-functions-default/79459,
math libcalls set errno, so it should emit "int" TBAA metadata on FP
libcalls to solve the alias issue.

Note: Only add support for expf in this PR

Fix https://github.com/llvm/llvm-project/issues/86635


  Commit: e475bb7ac33d7bc0446fe86858f5c3073cd48c97
      https://github.com/llvm/llvm-project/commit/e475bb7ac33d7bc0446fe86858f5c3073cd48c97
  Author: Hristo Hristov <hghristov.rmm at gmail.com>
  Date:   2024-07-19 (Fri, 19 Jul 2024)

  Changed paths:
    M libcxx/docs/FeatureTestMacroTable.rst
    M libcxx/docs/ReleaseNotes/19.rst
    M libcxx/docs/Status/Cxx23Issues.csv
    M libcxx/docs/Status/Cxx23Papers.csv
    M libcxx/docs/Status/Cxx2cIssues.csv
    M libcxx/include/CMakeLists.txt
    M libcxx/include/__memory/allocator_traits.h
    A libcxx/include/__memory/inout_ptr.h
    A libcxx/include/__memory/out_ptr.h
    M libcxx/include/__memory/pointer_traits.h
    M libcxx/include/memory
    M libcxx/include/module.modulemap
    M libcxx/include/version
    M libcxx/modules/std/memory.inc
    M libcxx/test/std/language.support/support.limits/support.limits.general/memory.version.compile.pass.cpp
    M libcxx/test/std/language.support/support.limits/support.limits.general/version.version.compile.pass.cpp
    A libcxx/test/std/utilities/smartptr/adapt/inout_ptr/inout_ptr.general.pass.cpp
    A libcxx/test/std/utilities/smartptr/adapt/inout_ptr/inout_ptr.verify.cpp
    A libcxx/test/std/utilities/smartptr/adapt/inout_ptr/inout_ptr_t.convert.pass.cpp
    A libcxx/test/std/utilities/smartptr/adapt/inout_ptr/inout_ptr_t.ctor.pass.cpp
    A libcxx/test/std/utilities/smartptr/adapt/inout_ptr/inout_ptr_t.verify.cpp
    A libcxx/test/std/utilities/smartptr/adapt/out_ptr/out_ptr.general.pass.cpp
    A libcxx/test/std/utilities/smartptr/adapt/out_ptr/out_ptr.verify.cpp
    A libcxx/test/std/utilities/smartptr/adapt/out_ptr/out_ptr_t.convert.pass.cpp
    A libcxx/test/std/utilities/smartptr/adapt/out_ptr/out_ptr_t.ctor.pass.cpp
    A libcxx/test/std/utilities/smartptr/adapt/out_ptr/out_ptr_t.verify.cpp
    A libcxx/test/std/utilities/smartptr/adapt/types.h
    M libcxx/utils/generate_feature_test_macro_components.py

  Log Message:
  -----------
  [libc++][memory] P1132R8: `out_ptr` - a scalable output pointer abstraction (#73618)

Differential Revision: https://reviews.llvm.org/D150525

Implements:
- https://wg21.link/P1132R8 - `out_ptr` - a scalable output pointer
abstraction
- https://eel.is/c++draft/smartptr.adapt - 20.3.4 Smart pointer adaptors
- https://wg21.link/LWG3734 - Inconsistency in `inout_ptr` and `out_ptr`
for empty case
- https://wg21.link/LWG3897- `inout_ptr` will not update raw pointer to
0

---------

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


  Commit: 401d7bcabc0affc38a6e52ffad782eedf0a5ec5a
      https://github.com/llvm/llvm-project/commit/401d7bcabc0affc38a6e52ffad782eedf0a5ec5a
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2024-07-19 (Fri, 19 Jul 2024)

  Changed paths:
    M llvm/utils/gn/secondary/libcxx/include/BUILD.gn

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


  Commit: 3023b15fb1ec00dbe6a1cb630236125f500978ef
      https://github.com/llvm/llvm-project/commit/3023b15fb1ec00dbe6a1cb630236125f500978ef
  Author: Amir Ayupov <aaupov at fb.com>
  Date:   2024-07-18 (Thu, 18 Jul 2024)

  Changed paths:
    M bolt/include/bolt/Core/BinaryContext.h
    M bolt/include/bolt/Core/MCPlusBuilder.h
    M bolt/lib/Core/BinaryContext.cpp
    M bolt/lib/Core/BinaryFunction.cpp
    M bolt/lib/Passes/IndirectCallPromotion.cpp
    M bolt/lib/Target/AArch64/AArch64MCPlusBuilder.cpp
    M bolt/lib/Target/RISCV/RISCVMCPlusBuilder.cpp
    M bolt/lib/Target/X86/X86MCPlusBuilder.cpp
    M bolt/test/X86/Inputs/jump-table-fixed-ref-pic.s
    M bolt/test/X86/jump-table-fixed-ref-pic.test

  Log Message:
  -----------
  [BOLT] Support POSSIBLE_PIC_FIXED_BRANCH

Detect and support fixed PIC indirect jumps of the following form:
```
movslq  En(%rip), %r1
leaq  PIC_JUMP_TABLE(%rip), %r2
addq  %r2, %r1
jmpq  *%r1
```

with PIC_JUMP_TABLE that looks like following:

```
  JT:  ----------
   E1:| L1 - JT  |
      |----------|
   E2:| L2 - JT  |
      |----------|
      |          |
         ......
   En:| Ln - JT  |
       ----------
```

The code could be produced by compilers, see
https://github.com/llvm/llvm-project/issues/91648.

Test Plan: updated jump-table-fixed-ref-pic.test

Reviewers: maksfb, ayermolo, dcci, rafaelauler

Reviewed By: rafaelauler

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


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

  Changed paths:
    M bolt/include/bolt/Core/BinaryContext.h
    M bolt/include/bolt/Core/BinaryFunction.h
    M bolt/include/bolt/Profile/ProfileYAMLMapping.h
    M bolt/lib/Profile/DataAggregator.cpp
    M bolt/lib/Profile/YAMLProfileWriter.cpp
    M bolt/lib/Rewrite/PseudoProbeRewriter.cpp
    M bolt/lib/Rewrite/RewriteInstance.cpp
    M bolt/test/X86/pseudoprobe-decoding-inline.test

  Log Message:
  -----------
  [BOLT] Expose pseudo probe function checksum and GUID (#99389)

Add a BinaryFunction field for pseudo probe function GUID.
Populate it during pseudo probe section parsing, and emit it in YAML
profile (both regular and BAT), along with function checksum.

To be used for stale function matching.

Test Plan: update pseudoprobe-decoding-inline.test


  Commit: 6c3aa626b28d60411b14c593f3e0443cf37fc84d
      https://github.com/llvm/llvm-project/commit/6c3aa626b28d60411b14c593f3e0443cf37fc84d
  Author: Amir Ayupov <aaupov at fb.com>
  Date:   2024-07-18 (Thu, 18 Jul 2024)

  Changed paths:
    M llvm/include/llvm/MC/MCPseudoProbe.h

  Log Message:
  -----------
  [MC][NFC] Use std::map for AddressProbesMap

AddressProbesMap is keyed by binary addresses, and it makes sense to
treat them as ordered. This also enables slicing by binary function/
binary basic block, to be used in BOLT
(https://github.com/llvm/llvm-project/pull/99554).

Test Plan: NFC

Reviewers: wlei-llvm

Reviewed By: wlei-llvm

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


  Commit: c905db67a05c4455548ea322c780a8d74380fd86
      https://github.com/llvm/llvm-project/commit/c905db67a05c4455548ea322c780a8d74380fd86
  Author: Amir Ayupov <aaupov at fb.com>
  Date:   2024-07-18 (Thu, 18 Jul 2024)

  Changed paths:
    M bolt/include/bolt/Profile/ProfileYAMLMapping.h
    M bolt/lib/Profile/DataAggregator.cpp
    M bolt/lib/Profile/YAMLProfileWriter.cpp
    M bolt/test/X86/pseudoprobe-decoding-inline.test

  Log Message:
  -----------
  [BOLT] Attach pseudo probes to blocks in YAML profile

Read pseudo probes in regular and BAT YAML profile generation, and
attach them to YAML profile basic blocks. This exposes GUID, probe id,
and probe type in profile for future use in stale profile matching.

Test Plan: updated pseudoprobe-decoding-inline.test

Reviewers: dcci, rafaelauler, ayermolo, maksfb

Reviewed By: rafaelauler

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


  Commit: 871740761f15df9436fc5e31c0c0ef17b9294891
      https://github.com/llvm/llvm-project/commit/871740761f15df9436fc5e31c0c0ef17b9294891
  Author: AtariDreams <gfunni234 at gmail.com>
  Date:   2024-07-19 (Fri, 19 Jul 2024)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
    M llvm/test/CodeGen/X86/combine-udiv.ll
    M llvm/test/CodeGen/X86/omit-urem-of-power-of-two-or-zero-when-comparing-with-zero.ll

  Log Message:
  -----------
  [CodeGen] Remove checks for vectors in unsigned division prior to computing leading zeros (#99524)

It turns out we can safely use
DAG.computeKnownBits(N0).countMinLeadingZeros() with constant legal
vectors, so remove the check for it.


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

  Changed paths:
    M llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
    A llvm/test/CodeGen/AArch64/GlobalISel/irtranslator-sucmp.ll

  Log Message:
  -----------
  [GlobalIsel] import G_SCMP and G_UCMP (#99518)

See https://github.com/llvm/llvm-project/pull/98894


  Commit: 687fc08e7c7755f68838040edb00d4f64e0bebe7
      https://github.com/llvm/llvm-project/commit/687fc08e7c7755f68838040edb00d4f64e0bebe7
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-07-18 (Thu, 18 Jul 2024)

  Changed paths:
    M llvm/unittests/ADT/SetOperationsTest.cpp

  Log Message:
  -----------
  [ADT] Use UnorderedElementsAre in SetOperationsTest.cpp (NFC) (#99596)


  Commit: 88e9bd822fe088eff74f49081b890071538fa40c
      https://github.com/llvm/llvm-project/commit/88e9bd822fe088eff74f49081b890071538fa40c
  Author: Shengchen Kan <shengchen.kan at intel.com>
  Date:   2024-07-19 (Fri, 19 Jul 2024)

  Changed paths:
    M clang/include/clang/Driver/Options.td
    M clang/lib/Basic/Targets/X86.cpp
    M clang/test/Driver/x86-target-features.c
    M clang/test/Preprocessor/x86_target_features.c

  Log Message:
  -----------
  [X86][Driver] Enable feature zu for -mapxf

This is follow-up for #78901 after validation.
Drop the comments for stability since zu is the last feature for cpuid APX_F.


  Commit: 592233a962fc870b5270d4e55aab5fe8941ac676
      https://github.com/llvm/llvm-project/commit/592233a962fc870b5270d4e55aab5fe8941ac676
  Author: Brandon Wu <brandon.wu at sifive.com>
  Date:   2024-07-19 (Fri, 19 Jul 2024)

  Changed paths:
    M llvm/utils/TableGen/Common/DAGISelMatcher.cpp
    M llvm/utils/TableGen/Common/DAGISelMatcher.h
    M llvm/utils/TableGen/DAGISelMatcherEmitter.cpp
    M llvm/utils/TableGen/DAGISelMatcherGen.cpp

  Log Message:
  -----------
  [TableGen][SelectionDAG] Make CheckValueTypeMatcher use MVT::SimpleValueType (#99537)

The original `CheckValueTypeMatcher` stores StringRef as the member
variable type, however it's more efficient to use use
MVT::SimpleValueType since it prevents string comparison in isEqualImpl,
it also reduce the memory consumption in each object.


  Commit: 79a0b665934a3de1113d1df90a9d677f39d9389a
      https://github.com/llvm/llvm-project/commit/79a0b665934a3de1113d1df90a9d677f39d9389a
  Author: Amir Ayupov <aaupov at fb.com>
  Date:   2024-07-18 (Thu, 18 Jul 2024)

  Changed paths:
    M bolt/lib/Profile/CMakeLists.txt

  Log Message:
  -----------
  [BOLT] Add MC dependency for Profile


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

  Changed paths:
    M compiler-rt/lib/safestack/safestack_platform.h
    M compiler-rt/lib/safestack/safestack_util.h

  Log Message:
  -----------
  [safestack] Various 32-bit Linux fixes (#99455)

When enabling 32-bit testing on Linux/i386 and Linux/sparc, many tests
`FAIL`:

- All Linux/i386 tests `FAIL` with ``` safestack CHECK failed:
/vol/llvm/src/llvm-project/local/compiler-rt/lib/safestack/safestack.cpp:95
MAP_FAILED != addr ``` because the safestack `mmap` implementation
doesn't work there. This patch adjusts it to match the
`sanitizer_linux.cpp.c` one.
- On 32-bit Linux/sparc, the `pthread*.c` tests `FAIL` because a `tid_t`
(`uint64_t`) `tid` arg was passed to `syscall(SYS_tgkill)` while `tid`
is actually a `pid_t` (`int`). Fixed by adding a cast.

Tested on `x86_64-pc-linux-gnu` (32 and 64-bit) and
`sparc64-unknown-linux-gnu` (32 and 64-bit).


  Commit: 2e5b4516b70be9b8d45d4ecd0bd72c41e91ce6fb
      https://github.com/llvm/llvm-project/commit/2e5b4516b70be9b8d45d4ecd0bd72c41e91ce6fb
  Author: Shan Huang <52285902006 at stu.ecnu.edu.cn>
  Date:   2024-07-19 (Fri, 19 Jul 2024)

  Changed paths:
    M llvm/lib/Transforms/Scalar/SimpleLoopUnswitch.cpp
    A llvm/test/Transforms/SimpleLoopUnswitch/preserving-debugloc-trivial-terminators.ll

  Log Message:
  -----------
  [DebugInfo][SimpleLoopUnswitch] Fix missing debug location updates for new terminators (#98789)

Fix #98787 .


  Commit: 3b78dfa10c4b77581cc29c4510aefe919ae660ba
      https://github.com/llvm/llvm-project/commit/3b78dfa10c4b77581cc29c4510aefe919ae660ba
  Author: Petr Hosek <phosek at google.com>
  Date:   2024-07-18 (Thu, 18 Jul 2024)

  Changed paths:
    M clang/cmake/caches/Fuchsia-stage2.cmake
    M libcxx/CMakeLists.txt
    A libcxx/cmake/Modules/HandleLibC.cmake
    M libcxx/cmake/config-ix.cmake
    M libcxx/include/CMakeLists.txt
    M libcxx/src/CMakeLists.txt

  Log Message:
  -----------
  [libc][libcxx] Support for building libc++ against LLVM libc (#99287)

Provide an option to build libc++ against LLVM libc and set the CMake
compile and link options appropriately when the option is enabled.


  Commit: 2f0910d2d74419ef1ebf814b471af721ee78b464
      https://github.com/llvm/llvm-project/commit/2f0910d2d74419ef1ebf814b471af721ee78b464
  Author: Chuanqi Xu <yedeng.yd at linux.alibaba.com>
  Date:   2024-07-19 (Fri, 19 Jul 2024)

  Changed paths:
    M clang/lib/Serialization/ASTReader.cpp
    M clang/lib/Serialization/ASTReaderDecl.cpp
    A clang/test/Modules/pch-in-module-units.cppm

  Log Message:
  -----------
  [C++20] [Modules] Skip ODR checks if either declaration comes from GMF

This patch tries to workaround the case that:
- in a module unit that imports another module unit
- both the module units including overlapped headers
- the compiler emits false positive ODR violation diagnostics for the
  overlapped headers if ODR check is enabled
- the current module units enables PCH

For the third point, we disabled ODR check if the declarations comes
from GMF. However, due to the forth point, the check whether the
declaration comes from GMF failed. Then we still going to check it and
then the users get false positive checks.

What's worse is that, this always happens in clangd, where will generate
the PCH automatically before parsing the input files.

The root cause of the problem we mixed the modules in the semantical
level and the module in the serialization level.

The problem is pretty fundamental and we need time to fix that. But 19.x
is going to be branched and I hope to give clangd better user
experience. So I decided to land this workaround even if it is pretyy
niche and may only work for the case of clangd's pattern.


  Commit: 377e1ebdd4ed64c996566b8cede857c7e4c1fc0f
      https://github.com/llvm/llvm-project/commit/377e1ebdd4ed64c996566b8cede857c7e4c1fc0f
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2024-07-18 (Thu, 18 Jul 2024)

  Changed paths:
    M compiler-rt/test/asan/TestCases/debug_stacks.cpp

  Log Message:
  -----------
  [asan] Consume leading zeroes in a test


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

  Changed paths:
    M llvm/lib/Target/AArch64/MCTargetDesc/AArch64ELFStreamer.cpp
    M llvm/test/MC/AArch64/mapping-across-sections.s

  Log Message:
  -----------
  [AArch64,ELF] Use getCurrentSection().first in changeSection

Similar to the NVPTX change 4ae23bcca144b542f16d45acc8f270e156e2fa4e.
And improve the tests.


  Commit: 6f710fef838185cbbe11193b30d6adc354b08b28
      https://github.com/llvm/llvm-project/commit/6f710fef838185cbbe11193b30d6adc354b08b28
  Author: Chuanqi Xu <yedeng.yd at linux.alibaba.com>
  Date:   2024-07-19 (Fri, 19 Jul 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/docs/StandardCPlusPlusModules.rst

  Log Message:
  -----------
  [Doc] Update documentation for no-transitive-change (#96453)

(Some backgrounds, not required to read:
https://discourse.llvm.org/t/rfc-c-20-modules-introduce-thin-bmi-and-decls-hash/74755)

This is the document part for the no-transitive-change
(https://github.com/llvm/llvm-project/pull/86912,
https://github.com/llvm/llvm-project/pull/92083,
https://github.com/llvm/llvm-project/pull/92085,
https://github.com/llvm/llvm-project/pull/92511) to provide the ability
for build system to skip some unnecessary recompilations.

See the patch for examples.


  Commit: 90668d240417422827d0468aa32b6aaa88105859
      https://github.com/llvm/llvm-project/commit/90668d240417422827d0468aa32b6aaa88105859
  Author: Rajat Bajpai <rbajpai at nvidia.com>
  Date:   2024-07-19 (Fri, 19 Jul 2024)

  Changed paths:
    M llvm/lib/Analysis/LazyValueInfo.cpp
    M llvm/test/Transforms/CorrelatedValuePropagation/vectors.ll

  Log Message:
  -----------
  [CVP][LVI] Add support for InsertElementInst in LVI (#99368)

Currently, the LVI analysis pass doesn't support InsertElementInst
vector instruction. Due to this, some optimization opportunities are
missed. For example, in the below example, ICMP instruction can be
folded but it doesn't.

```
...
%ie1 = insertelement <2 x i32> poison, i32 10, i64 0
%ie2 = insertelement <2 x i32> %ie1, i32 20, i64 1
%icmp = icmp <2 x i1> %ie2, <i32 40, i32 40>
...
```

This change adds InsertElementInst support in the LVI analysis pass to
fix the motivating example.


  Commit: a1d77caaabbb5279b734c061dab36b2138ec476d
      https://github.com/llvm/llvm-project/commit/a1d77caaabbb5279b734c061dab36b2138ec476d
  Author: Daniil Kovalev <dkovalev at accesssoftek.com>
  Date:   2024-07-19 (Fri, 19 Jul 2024)

  Changed paths:
    M clang/test/CodeGen/ptrauth-function-lvalue-cast-disc.c
    M clang/test/CodeGen/ptrauth-function-type-discriminator-cast.c
    M clang/test/CodeGen/ptrauth-function-type-discriminator.c
    M clang/test/CodeGen/ptrauth-ubsan-vptr.cpp
    M clang/test/CodeGenCXX/ptrauth-explicit-vtable-pointer-control.cpp
    M clang/test/CodeGenCXX/ptrauth-rtti-layout.cpp
    M clang/test/CodeGenCXX/ptrauth-static-destructors.cpp
    M clang/test/CodeGenCXX/ptrauth-throw.cpp
    M clang/test/CodeGenCXX/ptrauth-thunks.cpp
    M clang/test/CodeGenCXX/ptrauth-virtual-function.cpp
    M clang/test/CodeGenCXX/ptrauth-vtable-virtual-inheritance-thunk.cpp
    M clang/test/CodeGenCXX/ubsan-vtable-checks.cpp
    M clang/test/SemaCXX/ptrauth-incomplete-virtual-member-function-return-arg-type.cpp
    M clang/test/SemaCXX/vtable_pointer_authentication_attribute.cpp

  Log Message:
  -----------
  [test][PAC][clang] Add missing tests against linux triples (#99482)

Enhance tests introduced in #94056, #96992, #98276 and #98847 by adding
RUN and CHECK lines against linux triples.


  Commit: 2df9fd7edb73c1c2b27bda433ae0795bc8076dd3
      https://github.com/llvm/llvm-project/commit/2df9fd7edb73c1c2b27bda433ae0795bc8076dd3
  Author: Haowei <haowei at google.com>
  Date:   2024-07-19 (Fri, 19 Jul 2024)

  Changed paths:
    M clang/test/InstallAPI/diagnostics-dsym.test

  Log Message:
  -----------
  Fix diagnostics-dsym.test on mac-arm64 (#99399)

The check ordering of diagnostics-dsym.test is wrong and it causes
test failure when running on mac-arm64 machine. This patch fixes it.


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

  Changed paths:
    M mlir/lib/Dialect/Linalg/Transforms/Vectorization.cpp
    M mlir/test/Dialect/Linalg/vectorization-unsupported.mlir

  Log Message:
  -----------
  [mlir][linalg] Restrict scalable vectorisation (#98639)

Updates `vectorizeScalableVectorPrecondition` so that scalable
vectorisation is only applied in well understood and tested scenarios.

It's unlikely that we would ever want an arbitrary dimension to be
scalable. While the Linalg vectoriser should be flexible enough to
handle all possibilities:
  * in more "exotic" cases, we are likely to struggle with lowerings
    further down the compilation stack,
  * it would be impractical given the limitations of LLVM (which usually
    reflect the limitations of actual hardware) - e.g. no support for
    "scalable" arrays of scalable or fixed width vectors (*).

Ultimately, the goal of this patch is to better document what's
currently supported. While this PR adds some new restrictions, no
existing tests are affected.

(*) At MLIR vector level that would correspond to e.g.
`vector<[4]x8xf32>`.


  Commit: 8d0cbef0eddb6c651be5880bdeb0a7709629ac9f
      https://github.com/llvm/llvm-project/commit/8d0cbef0eddb6c651be5880bdeb0a7709629ac9f
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-07-19 (Fri, 19 Jul 2024)

  Changed paths:
    M llvm/include/llvm/ADT/SetOperations.h

  Log Message:
  -----------
  [ADT] Use range-based for loops (NFC) (#99605)


  Commit: e6668b1be8acbabeea0704bdc224637059aaa2af
      https://github.com/llvm/llvm-project/commit/e6668b1be8acbabeea0704bdc224637059aaa2af
  Author: Corentin Ferry <corentin.ferry at amd.com>
  Date:   2024-07-19 (Fri, 19 Jul 2024)

  Changed paths:
    M mlir/lib/Dialect/Tosa/IR/TosaCanonicalizations.cpp
    M mlir/test/Dialect/Tosa/constant-op-fold.mlir

  Log Message:
  -----------
  [mlir][tosa] Use roundeven in TOSA cast splat constant op folding (#99484)

The behavior of TOSA Cast operation for floating-point to integers is to round to the nearest even. This commit aligns the behavior of folding a TOSA Cast of a float splat to int, so it also uses roundeven.


  Commit: 5c93a94f5adaa304922a936842162cba91785211
      https://github.com/llvm/llvm-project/commit/5c93a94f5adaa304922a936842162cba91785211
  Author: Michael Kruse <llvm-project at meinersbur.de>
  Date:   2024-07-19 (Fri, 19 Jul 2024)

  Changed paths:
    M clang/include/clang-c/Index.h
    M clang/include/clang/AST/RecursiveASTVisitor.h
    M clang/include/clang/AST/StmtOpenMP.h
    M clang/include/clang/Basic/StmtNodes.td
    M clang/include/clang/Sema/SemaOpenMP.h
    M clang/include/clang/Serialization/ASTBitCodes.h
    M clang/lib/AST/StmtOpenMP.cpp
    M clang/lib/AST/StmtPrinter.cpp
    M clang/lib/AST/StmtProfile.cpp
    M clang/lib/Basic/OpenMPKinds.cpp
    M clang/lib/CodeGen/CGStmt.cpp
    M clang/lib/CodeGen/CGStmtOpenMP.cpp
    M clang/lib/CodeGen/CodeGenFunction.h
    M clang/lib/Parse/ParseOpenMP.cpp
    M clang/lib/Sema/SemaExceptionSpec.cpp
    M clang/lib/Sema/SemaOpenMP.cpp
    M clang/lib/Sema/TreeTransform.h
    M clang/lib/Serialization/ASTReaderStmt.cpp
    M clang/lib/Serialization/ASTWriterStmt.cpp
    M clang/lib/StaticAnalyzer/Core/ExprEngine.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/tools/libclang/CIndex.cpp
    M clang/tools/libclang/CXCursor.cpp
    M llvm/include/llvm/Frontend/OpenMP/OMP.td
    A openmp/runtime/test/transform/interchange/foreach.cpp
    A openmp/runtime/test/transform/interchange/intfor.c
    A openmp/runtime/test/transform/interchange/iterfor.cpp
    A openmp/runtime/test/transform/interchange/parallel-wsloop-collapse-foreach.cpp
    A openmp/runtime/test/transform/interchange/parallel-wsloop-collapse-intfor.cpp

  Log Message:
  -----------
  [Clang][OpenMP] Add interchange directive (#93022)

Add the interchange directive which will be introduced in the upcoming
OpenMP 6.0 specification. A preview has been published in [Technical
Report 12](https://www.openmp.org/wp-content/uploads/openmp-TR12.pdf).


  Commit: c248d05c6807baba34ff4fb254176e300922ea72
      https://github.com/llvm/llvm-project/commit/c248d05c6807baba34ff4fb254176e300922ea72
  Author: Emanuele Rocca <emanuele.rocca at arm.com>
  Date:   2024-07-19 (Fri, 19 Jul 2024)

  Changed paths:
    M clang/lib/AST/ASTContext.cpp
    M clang/lib/Sema/Sema.cpp
    M clang/test/PCH/aarch64-sve-types.c

  Log Message:
  -----------
  [Clang] make SVE types known to device targets too (#99446)

For the purpose of preprocessing and declarations in header files,
ensure clang accepts SVE types for both device and host targets.

Co-authored-by: Sander De Smalen <sander.desmalen at arm.com>


  Commit: c81366709574bb95bad86011a44e80a7f97f2c56
      https://github.com/llvm/llvm-project/commit/c81366709574bb95bad86011a44e80a7f97f2c56
  Author: Mariya Podchishchaeva <mariya.podchishchaeva at intel.com>
  Date:   2024-07-19 (Fri, 19 Jul 2024)

  Changed paths:
    M clang/include/clang/Lex/PPEmbedParameters.h
    M clang/lib/Lex/PPDirectives.cpp
    A clang/test/Preprocessor/embed_search_paths.c

  Log Message:
  -----------
  [clang] Fix static analyzer concerns in #embed code (#99331)

1. Dead code in `LookupEmbedFile`. The loop always exited on the first
iteration. This was also causing a bug of not checking all directories
provided by `--embed-dir`.

2. Use of uninitialized variable `CurTok` in `LexEmbedParameters`. It
was used to initialize the field which seems to be unused. Removed
unused field, this way `CurTok` should be initialized by Lex method.


  Commit: 25f4bd8872b2c15c641c8e915afb54b39d119d8a
      https://github.com/llvm/llvm-project/commit/25f4bd8872b2c15c641c8e915afb54b39d119d8a
  Author: Changpeng Fang <changpeng.fang at amd.com>
  Date:   2024-07-19 (Fri, 19 Jul 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIFoldOperands.cpp
    A llvm/test/CodeGen/AMDGPU/fold-zero-high-bits-clear-kill-flags.mir

  Log Message:
  -----------
  AMDGPU: Clear kill flags after FoldZeroHighBits (#99582)

After folding, all uses of the result register are going to be replaced
by the operand register. The kill flags on the uses of the result and
operand registers are no longer valid after the replacement, and need to
be cleared.
The only exception is, however, if the kill flag is set for the operand
register, we are sure the last use of the result register is the new
last use of the operand register, and thus we are safe to keep the kill
flags.


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

  Changed paths:
    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

  Log Message:
  -----------
  [safestack] Support multilib testing (#98002)

While working on my safestack patches, I noticed that only the default
multilib was tested even though all multilib versions of
`libclang_rt.safestack.a` were built.

This patch fixes this, patterned after the ubsan testing support.

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


  Commit: ae2e66b03b7a793642d6291ccd8de2252637416a
      https://github.com/llvm/llvm-project/commit/ae2e66b03b7a793642d6291ccd8de2252637416a
  Author: David Green <david.green at arm.com>
  Date:   2024-07-19 (Fri, 19 Jul 2024)

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

  Log Message:
  -----------
  [AArch64] Use TargetStackID::ScalableVector instead of hard-coded values. NFC


  Commit: a6b204b82745764e1460aa1dc26e69ff73195c60
      https://github.com/llvm/llvm-project/commit/a6b204b82745764e1460aa1dc26e69ff73195c60
  Author: Simon Tatham <simon.tatham at arm.com>
  Date:   2024-07-19 (Fri, 19 Jul 2024)

  Changed paths:
    M lld/ELF/Arch/AArch64.cpp
    M lld/test/ELF/aarch64-reloc-implicit-addend.test

  Log Message:
  -----------
  [lld][AArch64] Fix handling of SHT_REL relocation addends. (#98291)

Normally, AArch64 ELF objects use the SHT_RELA type of relocation
section, with addends stored in each relocation. But some legacy AArch64
object producers still use SHT_REL in some situations, storing the
addend in the initial value of the data item or instruction immediate
field that the relocation will modify. LLD was mishandling relocations
of this type in multiple ways.

Firstly, many of the cases in the `getImplicitAddend` switch statement
were apparently based on a misunderstanding. The relocation types that
operate on instructions should be expecting to find an instruction of
the appropriate type, and should extract its immediate field. But many
of them were instead behaving as if they expected to find a raw 64-, 32-
or 16-bit value, and wanted to extract the right range of bits. For
example, the relocation for R_AARCH64_ADD_ABS_LO12_NC read a 16-bit word
and extracted its bottom 12 bits, presumably on the thinking that the
relocation writes the low 12 bits of the value it computes. But the
input addend for SHT_REL purposes occupies the immediate field of an
AArch64 ADD instruction, which meant it should have been reading a
32-bit AArch64 instruction encoding, and extracting bits 10-21 where the
immediate field lives. Worse, the R_AARCH64_MOVW_UABS_G2 relocation was
reading 64 bits from the input section, and since it's only relocating a
32-bit instruction, the second half of those bits would have been
completely unrelated!

Adding to that confusion, most of the values being read were first
sign-extended, and _then_ had a range of bits extracted, which doesn't
make much sense. They should have first extracted some bits from the
instruction encoding, and then sign-extended that 12-, 19-, or 21-bit
result (or whatever else) to a full 64-bit value.

Secondly, after the relocated value was computed, in most cases it was
being written into the target instruction field via a bitwise OR
operation. This meant that if the instruction field didn't initially
contain all zeroes, the wrong result would end up in it. That's not even
a 100% reliable strategy for SHT_RELA, which in some situations is used
for its repeatability (in the sense that applying the relocation twice
should cause the second answer to overwrite the first, so you can
relocate an image in advance to its most likely address, and then do it
again at load time if that turns out not to be available). But for
SHT_REL, when you expect nonzero immediate fields in normal use, it
couldn't possibly work. You could see the effect of this in the existing
test, which had a lot of FFFFFF in the expected output which there
wasn't any plausible justification for.

Finally, one relocation type was actually missing: there was no support
for R_AARCH64_ADR_PREL_LO21 at all.

So I've rewritten most of the cases in `getImplicitAddend`; replaced the
bitwise ORs with overwrites; and replaced the previous test with a much
more thorough one, obtained by writing an input assembly file with
explicitly specified relocations on instructions that also have
carefully selected immediate fields, and then doing some yaml2obj
seddery to turn the RELA relocation section into a REL one.


  Commit: 270f5e42b8daab586ffcd2b46ff41486199f6626
      https://github.com/llvm/llvm-project/commit/270f5e42b8daab586ffcd2b46ff41486199f6626
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-07-19 (Fri, 19 Jul 2024)

  Changed paths:
    A llvm/test/Transforms/LoopVectorize/AArch64/divs-with-scalable-vfs.ll

  Log Message:
  -----------
  [LV] Add tests where uniform recipe gets predicated for scalable VFs.

Currently the tests crash, due to a VPReplicateRecipe getting predicated
for scalable vectors.

Precommits tests for https://github.com/llvm/llvm-project/pull/98892.

Test cases for
 * https://github.com/llvm/llvm-project/issues/80416 and
 * https://github.com/llvm/llvm-project/issues/94328


  Commit: e8fbefe15b101d7d30366cbe2ac068449923f5e2
      https://github.com/llvm/llvm-project/commit/e8fbefe15b101d7d30366cbe2ac068449923f5e2
  Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
  Date:   2024-07-19 (Fri, 19 Jul 2024)

  Changed paths:
    M llvm/include/llvm/Analysis/TargetLibraryInfo.def
    M llvm/lib/Analysis/TargetLibraryInfo.cpp
    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 basic support for remquo libcall (#99611)

This patch adds basic support for `remquo`. Constant folding support
will be submitted in a subsequent patch.

Related issue: https://github.com/llvm/llvm-project/issues/99497


  Commit: 39185da16228efb4a09a30d6825a6f508c4755a3
      https://github.com/llvm/llvm-project/commit/39185da16228efb4a09a30d6825a6f508c4755a3
  Author: SpencerAbson <Spencer.Abson at arm.com>
  Date:   2024-07-19 (Fri, 19 Jul 2024)

  Changed paths:
    M clang/lib/Basic/Targets/AArch64.cpp
    M clang/lib/Basic/Targets/AArch64.h
    M clang/test/Preprocessor/aarch64-target-features.c

  Log Message:
  -----------
  [Clang][AArch64] Add missing SME/SVE2.1 feature macros (#98285)

The 2022 SME2.1and SVE2.1 feature macros are missing from Clang. Passing
'-target-feature +sve2p1' and 'target-feature +sme2p1' should prompt
Clang to define __ARM_FEATURE_SVE2p1 and __ARM_FEATURE_SME2p1
respectively, including their prerequisits..

This patch includes __ARM_FEATURE_SVE2p1 and __ARM_FEATURE_SME2p1, plus
a clang preprocessor test for each. It also ensures that the Clang macro
builder is used in a consistent fashion across Targets/AArch64.cpp.

The specification for SVE2.1 is documented in the latest (2024 Q1) ACLE
release: https://github.com/ARM-software/acle/releases . SME2p1 is not
yet featured in ACLE documentation but its features are described under
https://developer.arm.com/documentation/ddi0487/latest/


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

  Changed paths:
    M libcxx/test/std/time/time.clock/time.clock.file/now.pass.cpp

  Log Message:
  -----------
  [libcxx][test] Remove picolib UNSUPPORTED for now.pass.cpp (#99503)

This ARM semihosting call was implemented in QEMU by
https://gitlab.com/qemu-project/qemu/-/commit/4d834039c2107cb86931cb3f22ca3de6e4e42b06
and is present in the qemu-system-arm v8.1.3 used by the builders.


  Commit: e5df657bbf38f8fcd9dd8c9e79262ca184f2598b
      https://github.com/llvm/llvm-project/commit/e5df657bbf38f8fcd9dd8c9e79262ca184f2598b
  Author: Alejandro Álvarez Ayllón <alejandro.alvarez at sonarsource.com>
  Date:   2024-07-19 (Fri, 19 Jul 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
    A clang/test/SemaCXX/instantiate-template-broken-nontype-default.cpp

  Log Message:
  -----------
  [Sema] Fix assertion error in Sema::FindInstantiatedDecl (#96509)

...when looking for a template instantiation with a non-type parameter of
unknown type and with a default value.

This can happen when a template non-type parameter has a broken
expression that gets replaced by a `RecoveryExpr`.


  Commit: 092dd9ca2d5149e3252098610c73e4fa42d831b9
      https://github.com/llvm/llvm-project/commit/092dd9ca2d5149e3252098610c73e4fa42d831b9
  Author: SpencerAbson <Spencer.Abson at arm.com>
  Date:   2024-07-19 (Fri, 19 Jul 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64InstrInfo.td
    M llvm/test/CodeGen/AArch64/arm64-neon-copy.ll
    M llvm/test/CodeGen/AArch64/fixed-point-conv-vec-pat.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-length-int-to-fp.ll

  Log Message:
  -----------
  [AArch64] Remove redundant instructions in int-to-fp of lowest vector… (#98602)

… element. 
When converting the lowest element (that in lane 0) of a vector from an
integer to a floating-point value, LLVM should select the SIMD scalar
variant of CVTF
(https://developer.arm.com/documentation/dui0801/g/A64-SIMD-Scalar-Instructions/SCVTF--scalar--integer-)
to avoid the FPR to GPR register transfers that are required to use the
general floating-point variant
(https://developer.arm.com/documentation/dui0801/g/A64-Floating-point-Instructions/SCVTF--scalar--integer-).
This is possible as the lowest element can be referred to by the
corresponding scalar sub-register with the width of the vector's
constituent elements.

This patch adds new TableGen patterns to remove these redundant
instructions for AArch64, as well as back-end tests to ensure the new
preferred instruction selection result is produced. Existing tests that
relied on the previous selection result have also been updated.


  Commit: ac6061e084250a377baa552842261797aa6da6a8
      https://github.com/llvm/llvm-project/commit/ac6061e084250a377baa552842261797aa6da6a8
  Author: David Sherwood <david.sherwood at arm.com>
  Date:   2024-07-19 (Fri, 19 Jul 2024)

  Changed paths:
    M llvm/include/llvm/Analysis/Loads.h
    M llvm/lib/Analysis/Loads.cpp
    M llvm/unittests/Analysis/LoadsTest.cpp

  Log Message:
  -----------
  [Analysis] Add new function isDereferenceableReadOnlyLoop (#97292)

I created this patch due to a reviewer request on PR #88385 to split off
the analysis changes, however without the other code in that PR I can
only test the new function with unit tests.


  Commit: d2e8b1d717c465ed122e6135810a834c9626bfad
      https://github.com/llvm/llvm-project/commit/d2e8b1d717c465ed122e6135810a834c9626bfad
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-07-19 (Fri, 19 Jul 2024)

  Changed paths:
    M llvm/test/Transforms/CorrelatedValuePropagation/ashr.ll

  Log Message:
  -----------
  [CVP] Regenerate test checks (NFC)


  Commit: 6235698f47828747d3b1b0418e547e2e4ff9138f
      https://github.com/llvm/llvm-project/commit/6235698f47828747d3b1b0418e547e2e4ff9138f
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-07-19 (Fri, 19 Jul 2024)

  Changed paths:
    M llvm/test/Transforms/CorrelatedValuePropagation/basic.ll

  Log Message:
  -----------
  [CVP] Add tests for range return attributes (NFC)


  Commit: b7b0071680e60c60da9d4d858f944fd95d76fd42
      https://github.com/llvm/llvm-project/commit/b7b0071680e60c60da9d4d858f944fd95d76fd42
  Author: Dinar Temirbulatov <Dinar.Temirbulatov at arm.com>
  Date:   2024-07-19 (Fri, 19 Jul 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/test/CodeGen/AArch64/double_reduct.ll
    M llvm/test/CodeGen/AArch64/sve-doublereduct.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-vector-zext.ll
    M llvm/test/CodeGen/AArch64/sve-int-reduce.ll
    A llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-reductions.ll
    M llvm/test/CodeGen/AArch64/vecreduce-add.ll

  Log Message:
  -----------
  [AArch64][SVE] Improve code quality of vector unsigned/signed add reductions. (#97339)

For SVE we don't have to zero extend and sum part of the result before
issuing UADDV instruction. Also this change allows to handle bigger than
a legal vector type more efficiently and lower a fixed-length vector
type to SVE's UADDV where appropriate.


  Commit: 17f98baf704f90dbf892fe0b0150715f09252499
      https://github.com/llvm/llvm-project/commit/17f98baf704f90dbf892fe0b0150715f09252499
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-07-19 (Fri, 19 Jul 2024)

  Changed paths:
    A llvm/test/Transforms/LoopVectorize/SystemZ/scalar-steps-with-users-demanding-all-lanes-and-first-lane-only.ll

  Log Message:
  -----------
  [LV] Add test with users both demanding all lanes and first-lane-only.

Add a test case where scalar steps are used by both a VPReplicateRecipe
(demands all scalar lanes) and a VPInstruction that only demands the
first lane.

Test case for https://github.com/llvm/llvm-project/issues/88849.


  Commit: a27037becd1bdea568e2f970d4b85fa5e02f3b08
      https://github.com/llvm/llvm-project/commit/a27037becd1bdea568e2f970d4b85fa5e02f3b08
  Author: Pavel Labath <pavel at labath.sk>
  Date:   2024-07-19 (Fri, 19 Jul 2024)

  Changed paths:
    M lldb/include/lldb/API/SBSaveCoreOptions.h
    M lldb/include/lldb/lldb-forward.h

  Log Message:
  -----------
  [lldb] Forward-declare lldb-private::SaveCoreOptions

to avoid including private headers from the API headers.

This fixes API tests which link against the lldb library.


  Commit: 7f763b162ff0f72bbd98e73da9b10d5d3941247b
      https://github.com/llvm/llvm-project/commit/7f763b162ff0f72bbd98e73da9b10d5d3941247b
  Author: Sergio Afonso <safonsof at amd.com>
  Date:   2024-07-19 (Fri, 19 Jul 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/OpenMP/OpenMPClauses.td

  Log Message:
  -----------
  [MLIR][OpenMP] NFC: Sort clause definitions (#99504)

This patch moves the `filter` clause definition to keep alphabetical
sorting of OpenMPClauses.td.


  Commit: 6cc8774228a4162ebadfa636086a171f82e51a8c
      https://github.com/llvm/llvm-project/commit/6cc8774228a4162ebadfa636086a171f82e51a8c
  Author: Jacek Caban <jacek at codeweavers.com>
  Date:   2024-07-19 (Fri, 19 Jul 2024)

  Changed paths:
    M llvm/include/llvm/Bitcode/LLVMBitCodes.h
    M llvm/include/llvm/CodeGen/AsmPrinter.h
    M llvm/include/llvm/IR/Attributes.td
    M llvm/lib/Bitcode/Writer/BitcodeWriter.cpp
    M llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
    M llvm/lib/Target/AArch64/AArch64Arm64ECCallLowering.cpp
    M llvm/lib/Target/AArch64/AArch64AsmPrinter.cpp
    M llvm/lib/Target/AArch64/AArch64CallingConvention.td
    M llvm/lib/Transforms/Utils/CodeExtractor.cpp
    A llvm/test/CodeGen/AArch64/arm64ec-hybrid-patchable.ll

  Log Message:
  -----------
  [CodeGen][ARM64EC] Add support for hybrid_patchable attribute. (#92965)


  Commit: 5a45fed188dce2ae6c4da23ba61c9b8df87f08f4
      https://github.com/llvm/llvm-project/commit/5a45fed188dce2ae6c4da23ba61c9b8df87f08f4
  Author: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>
  Date:   2024-07-19 (Fri, 19 Jul 2024)

  Changed paths:
    M clang/include/clang/Basic/DiagnosticDriverKinds.td
    M clang/include/clang/Driver/Options.td
    M clang/test/Driver/Ofast.c

  Log Message:
  -----------
  [clang][NFC] Fix typo in `-Ofast` deprecation warning

A follow-up for #98736


  Commit: 02cb5bcab4f5232bbc5ecacb3d5d94fd487baa23
      https://github.com/llvm/llvm-project/commit/02cb5bcab4f5232bbc5ecacb3d5d94fd487baa23
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-07-19 (Fri, 19 Jul 2024)

  Changed paths:
    M llvm/include/llvm/ADT/SetOperations.h

  Log Message:
  -----------
  [ADT] Teach set_intersect to erase with iterators (#99569)

Without this patch, we erase an element in S1 by value even though we
have an interator pointing to it.  This patch tries to use erase(iter)
to avoid redundant lookups.


  Commit: 0f231567719c99caa99164d8f91bad50883dab03
      https://github.com/llvm/llvm-project/commit/0f231567719c99caa99164d8f91bad50883dab03
  Author: wanglei <wanglei at loongson.cn>
  Date:   2024-07-19 (Fri, 19 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/Relocations/relocations.s

  Log Message:
  -----------
  [LoongArch] Support parsing the `%le_{hi20,add,lo12}_r` modifiers

Reviewed By: SixWeining

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


  Commit: 92e001482a51e0327c51873ebc556565531d3c4d
      https://github.com/llvm/llvm-project/commit/92e001482a51e0327c51873ebc556565531d3c4d
  Author: wanglei <wanglei at loongson.cn>
  Date:   2024-07-19 (Fri, 19 Jul 2024)

  Changed paths:
    M bolt/include/bolt/Core/BinaryContext.h
    M bolt/include/bolt/Core/BinaryFunction.h
    M bolt/include/bolt/Core/MCPlusBuilder.h
    M bolt/include/bolt/Profile/ProfileYAMLMapping.h
    M bolt/include/bolt/Rewrite/DWARFRewriter.h
    M bolt/lib/Core/BinaryContext.cpp
    M bolt/lib/Core/BinaryFunction.cpp
    M bolt/lib/Passes/IndirectCallPromotion.cpp
    M bolt/lib/Profile/CMakeLists.txt
    M bolt/lib/Profile/DataAggregator.cpp
    M bolt/lib/Profile/YAMLProfileWriter.cpp
    M bolt/lib/Rewrite/DWARFRewriter.cpp
    M bolt/lib/Rewrite/PseudoProbeRewriter.cpp
    M bolt/lib/Rewrite/RewriteInstance.cpp
    M bolt/lib/Target/AArch64/AArch64MCPlusBuilder.cpp
    M bolt/lib/Target/RISCV/RISCVMCPlusBuilder.cpp
    M bolt/lib/Target/X86/X86MCPlusBuilder.cpp
    M bolt/test/X86/Inputs/jump-table-fixed-ref-pic.s
    M bolt/test/X86/jump-table-fixed-ref-pic.test
    M bolt/test/X86/pseudoprobe-decoding-inline.test
    M clang-tools-extra/clang-tidy/bugprone/UnusedReturnValueCheck.cpp
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/unused-return-value.rst
    M clang-tools-extra/docs/clang-tidy/checks/cppcoreguidelines/avoid-const-or-ref-data-members.rst
    M clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/avoid-const-or-ref-data-members.cpp
    M clang/cmake/caches/Fuchsia-stage2.cmake
    M clang/docs/ReleaseNotes.rst
    M clang/docs/StandardCPlusPlusModules.rst
    M clang/include/clang-c/Index.h
    M clang/include/clang/AST/RecursiveASTVisitor.h
    M clang/include/clang/AST/StmtOpenMP.h
    M clang/include/clang/Basic/BuiltinsAMDGPU.def
    M clang/include/clang/Basic/DiagnosticDriverKinds.td
    M clang/include/clang/Basic/StmtNodes.td
    M clang/include/clang/Driver/Options.td
    M clang/include/clang/Lex/PPEmbedParameters.h
    M clang/include/clang/Sema/SemaOpenMP.h
    M clang/include/clang/Serialization/ASTBitCodes.h
    M clang/lib/AST/ASTContext.cpp
    M clang/lib/AST/Interp/Compiler.cpp
    M clang/lib/AST/Interp/Interp.cpp
    M clang/lib/AST/Interp/Interp.h
    M clang/lib/AST/Interp/Opcodes.td
    M clang/lib/AST/StmtOpenMP.cpp
    M clang/lib/AST/StmtPrinter.cpp
    M clang/lib/AST/StmtProfile.cpp
    M clang/lib/Basic/OpenMPKinds.cpp
    M clang/lib/Basic/Targets/AArch64.cpp
    M clang/lib/Basic/Targets/AArch64.h
    M clang/lib/Basic/Targets/X86.cpp
    M clang/lib/CodeGen/Address.h
    M clang/lib/CodeGen/CGBuilder.h
    M clang/lib/CodeGen/CGBuiltin.cpp
    M clang/lib/CodeGen/CGExpr.cpp
    M clang/lib/CodeGen/CGExprScalar.cpp
    M clang/lib/CodeGen/CGPointerAuth.cpp
    M clang/lib/CodeGen/CGStmt.cpp
    M clang/lib/CodeGen/CGStmtOpenMP.cpp
    M clang/lib/CodeGen/CGValue.h
    M clang/lib/CodeGen/CodeGenFunction.cpp
    M clang/lib/CodeGen/CodeGenFunction.h
    M clang/lib/CodeGen/CodeGenModule.cpp
    M clang/lib/CodeGen/Targets/SystemZ.cpp
    M clang/lib/Driver/ToolChains/Hexagon.cpp
    M clang/lib/Headers/ptrauth.h
    M clang/lib/Lex/DependencyDirectivesScanner.cpp
    M clang/lib/Lex/PPDirectives.cpp
    M clang/lib/Lex/Preprocessor.cpp
    M clang/lib/Parse/ParseOpenMP.cpp
    M clang/lib/Sema/Sema.cpp
    M clang/lib/Sema/SemaDecl.cpp
    M clang/lib/Sema/SemaExceptionSpec.cpp
    M clang/lib/Sema/SemaOpenMP.cpp
    M clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
    M clang/lib/Sema/SemaType.cpp
    M clang/lib/Sema/TreeTransform.h
    M clang/lib/Serialization/ASTReader.cpp
    M clang/lib/Serialization/ASTReaderDecl.cpp
    M clang/lib/Serialization/ASTReaderStmt.cpp
    M clang/lib/Serialization/ASTWriterStmt.cpp
    M clang/lib/StaticAnalyzer/Core/ExprEngine.cpp
    M clang/test/AST/Interp/cxx11.cpp
    A clang/test/AST/Interp/cxx2a.cpp
    M clang/test/AST/Interp/new-delete.cpp
    M clang/test/CXX/drs/cwg24xx.cpp
    M clang/test/CodeGen/SystemZ/systemz-abi.c
    A clang/test/CodeGen/aarch64-fmv-resolver-emission.c
    M clang/test/CodeGen/aarch64-mixed-target-attributes.c
    M clang/test/CodeGen/attr-counted-by.c
    M clang/test/CodeGen/attr-target-clones-aarch64.c
    M clang/test/CodeGen/attr-target-version.c
    M clang/test/CodeGen/math-libcalls-tbaa.cpp
    A clang/test/CodeGen/ptrauth-function-lvalue-cast-disc.c
    A clang/test/CodeGen/ptrauth-function-type-discriminator-cast.c
    M clang/test/CodeGen/ptrauth-function-type-discriminator.c
    M clang/test/CodeGen/ptrauth-ubsan-vptr.cpp
    A clang/test/CodeGenCXX/aarch64-fmv-resolver-emission.cpp
    M clang/test/CodeGenCXX/attr-target-clones-aarch64.cpp
    M clang/test/CodeGenCXX/attr-target-version.cpp
    M clang/test/CodeGenCXX/fmv-namespace.cpp
    M clang/test/CodeGenCXX/ptrauth-explicit-vtable-pointer-control.cpp
    M clang/test/CodeGenCXX/ptrauth-rtti-layout.cpp
    M clang/test/CodeGenCXX/ptrauth-static-destructors.cpp
    M clang/test/CodeGenCXX/ptrauth-throw.cpp
    M clang/test/CodeGenCXX/ptrauth-thunks.cpp
    M clang/test/CodeGenCXX/ptrauth-virtual-function.cpp
    M clang/test/CodeGenCXX/ptrauth-vtable-virtual-inheritance-thunk.cpp
    M clang/test/CodeGenCXX/ubsan-vtable-checks.cpp
    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/Driver/Ofast.c
    M clang/test/Driver/hexagon-toolchain-linux.c
    M clang/test/Driver/x86-target-features.c
    M clang/test/InstallAPI/diagnostics-dsym.test
    A clang/test/Modules/pch-in-module-units.cppm
    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/PCH/aarch64-sve-types.c
    M clang/test/Preprocessor/aarch64-target-features.c
    A clang/test/Preprocessor/embed_search_paths.c
    M clang/test/Preprocessor/x86_target_features.c
    M clang/test/SemaCXX/cxx-deprecated.cpp
    A clang/test/SemaCXX/instantiate-template-broken-nontype-default.cpp
    M clang/test/SemaCXX/ptrauth-incomplete-virtual-member-function-return-arg-type.cpp
    M clang/test/SemaCXX/vtable_pointer_authentication_attribute.cpp
    A clang/test/SemaOpenCL/builtins-amdgcn-raw-buffer-load-error.cl
    M clang/test/SemaOpenCL/builtins-amdgcn-raw-buffer-store-error.cl
    M clang/tools/libclang/CIndex.cpp
    M clang/tools/libclang/CXCursor.cpp
    M clang/unittests/Lex/DependencyDirectivesScannerTest.cpp
    M compiler-rt/cmake/base-config-ix.cmake
    M compiler-rt/lib/safestack/safestack_platform.h
    M compiler-rt/lib/safestack/safestack_util.h
    M compiler-rt/lib/sanitizer_common/sanitizer_allocator_primary64.h
    M compiler-rt/lib/sanitizer_common/sanitizer_coverage_libcdep_new.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_mac.cpp
    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_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/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/test/CMakeLists.txt
    M compiler-rt/test/asan/CMakeLists.txt
    M compiler-rt/test/asan/TestCases/debug_stacks.cpp
    M compiler-rt/test/ctx_profile/CMakeLists.txt
    M compiler-rt/test/fuzzer/CMakeLists.txt
    M compiler-rt/test/gwp_asan/CMakeLists.txt
    M compiler-rt/test/interception/CMakeLists.txt
    M compiler-rt/test/memprof/CMakeLists.txt
    M compiler-rt/test/msan/CMakeLists.txt
    M compiler-rt/test/nsan/CMakeLists.txt
    M compiler-rt/test/rtsan/CMakeLists.txt
    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/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/Posix/sanitizer_set_report_path_test.cpp
    M compiler-rt/test/scudo/standalone/CMakeLists.txt
    M compiler-rt/test/tsan/CMakeLists.txt
    M flang/docs/Extensions.md
    M flang/lib/Parser/Fortran-parsers.cpp
    M flang/lib/Parser/prescan.cpp
    M flang/lib/Semantics/definable.cpp
    M flang/lib/Semantics/expression.cpp
    M flang/runtime/misc-intrinsic.cpp
    M flang/runtime/unit.cpp
    M flang/test/Preprocessing/directive-contin-with-pp.F90
    M flang/test/Semantics/array-constr-values.f90
    M flang/test/Semantics/assign10.f90
    A flang/test/Semantics/associate03.f90
    A flang/test/Semantics/parent-comp-name.f90
    A flang/test/Semantics/struct03.f90
    M libc/CMakeLists.txt
    M libc/cmake/modules/LLVMLibCHeaderRules.cmake
    M libc/config/linux/aarch64/entrypoints.txt
    M libc/config/linux/api.td
    M libc/config/linux/x86_64/entrypoints.txt
    M libc/config/linux/x86_64/headers.txt
    M libc/docs/math/index.rst
    M libc/include/CMakeLists.txt
    M libc/newhdrgen/class_implementation/classes/function.py
    R libc/newhdrgen/class_implementation/classes/include.py
    M libc/newhdrgen/gpu_headers.py
    M libc/newhdrgen/header.py
    R libc/newhdrgen/tests/output/test_small.h
    M libc/newhdrgen/tests/test_integration.py
    R libc/newhdrgen/yaml/arpa/arpa_inet.yaml
    A libc/newhdrgen/yaml/arpa/inet.yaml
    R libc/newhdrgen/yaml/gpu/gpu_rpc.yaml
    A libc/newhdrgen/yaml/gpu/rpc.yaml
    M libc/newhdrgen/yaml/math.yaml
    A libc/newhdrgen/yaml/sys/auxv.yaml
    A libc/newhdrgen/yaml/sys/epoll.yaml
    A libc/newhdrgen/yaml/sys/ioctl.yaml
    A libc/newhdrgen/yaml/sys/mman.yaml
    A libc/newhdrgen/yaml/sys/prctl.yaml
    A libc/newhdrgen/yaml/sys/random.yaml
    A libc/newhdrgen/yaml/sys/resource.yaml
    A libc/newhdrgen/yaml/sys/select.yaml
    A libc/newhdrgen/yaml/sys/sendfile.yaml
    A libc/newhdrgen/yaml/sys/socket.yaml
    A libc/newhdrgen/yaml/sys/stat.yaml
    A libc/newhdrgen/yaml/sys/statvfs.yaml
    R libc/newhdrgen/yaml/sys/sys_auxv.yaml
    R libc/newhdrgen/yaml/sys/sys_epoll.yaml
    R libc/newhdrgen/yaml/sys/sys_ioctl.yaml
    R libc/newhdrgen/yaml/sys/sys_mman.yaml
    R libc/newhdrgen/yaml/sys/sys_prctl.yaml
    R libc/newhdrgen/yaml/sys/sys_random.yaml
    R libc/newhdrgen/yaml/sys/sys_resource.yaml
    R libc/newhdrgen/yaml/sys/sys_select.yaml
    R libc/newhdrgen/yaml/sys/sys_sendfile.yaml
    R libc/newhdrgen/yaml/sys/sys_socket.yaml
    R libc/newhdrgen/yaml/sys/sys_stat.yaml
    R libc/newhdrgen/yaml/sys/sys_statvfs.yaml
    R libc/newhdrgen/yaml/sys/sys_syscall.yaml
    R libc/newhdrgen/yaml/sys/sys_time.yaml
    R libc/newhdrgen/yaml/sys/sys_types.yaml
    R libc/newhdrgen/yaml/sys/sys_utsname.yaml
    R libc/newhdrgen/yaml/sys/sys_wait.yaml
    A libc/newhdrgen/yaml/sys/syscall.yaml
    A libc/newhdrgen/yaml/sys/time.yaml
    A libc/newhdrgen/yaml/sys/types.yaml
    A libc/newhdrgen/yaml/sys/utsname.yaml
    A libc/newhdrgen/yaml/sys/wait.yaml
    M libc/newhdrgen/yaml_to_classes.py
    M libc/spec/llvm_libc_ext.td
    M libc/spec/stdc.td
    M libc/src/__support/FPUtil/generic/CMakeLists.txt
    A libc/src/__support/FPUtil/generic/mul.h
    M libc/src/math/CMakeLists.txt
    A libc/src/math/dmulf128.h
    A libc/src/math/dmull.h
    A libc/src/math/f16mul.h
    A libc/src/math/f16mulf.h
    A libc/src/math/f16mulf128.h
    A libc/src/math/f16mull.h
    A libc/src/math/fmulf128.h
    A libc/src/math/fmull.h
    M libc/src/math/generic/CMakeLists.txt
    A libc/src/math/generic/dmulf128.cpp
    A libc/src/math/generic/dmull.cpp
    A libc/src/math/generic/f16mul.cpp
    A libc/src/math/generic/f16mulf.cpp
    A libc/src/math/generic/f16mulf128.cpp
    A libc/src/math/generic/f16mull.cpp
    M libc/src/math/generic/fmul.cpp
    A libc/src/math/generic/fmulf128.cpp
    A libc/src/math/generic/fmull.cpp
    M libc/src/sys/statvfs/linux/CMakeLists.txt
    M libc/test/src/math/CMakeLists.txt
    R libc/test/src/math/FMulTest.h
    A libc/test/src/math/MulTest.h
    A libc/test/src/math/dmull_test.cpp
    A libc/test/src/math/f16mul_test.cpp
    A libc/test/src/math/f16mulf_test.cpp
    A libc/test/src/math/f16mull_test.cpp
    M libc/test/src/math/fmul_test.cpp
    A libc/test/src/math/fmull_test.cpp
    M libc/test/src/math/smoke/CMakeLists.txt
    R libc/test/src/math/smoke/FMulTest.h
    A libc/test/src/math/smoke/MulTest.h
    A libc/test/src/math/smoke/dmulf128_test.cpp
    A libc/test/src/math/smoke/dmull_test.cpp
    A libc/test/src/math/smoke/f16mul_test.cpp
    A libc/test/src/math/smoke/f16mulf128_test.cpp
    A libc/test/src/math/smoke/f16mulf_test.cpp
    A libc/test/src/math/smoke/f16mull_test.cpp
    M libc/test/src/math/smoke/fmul_test.cpp
    A libc/test/src/math/smoke/fmulf128_test.cpp
    A libc/test/src/math/smoke/fmull_test.cpp
    M libc/utils/MPFRWrapper/CMakeLists.txt
    M libc/utils/MPFRWrapper/MPFRUtils.cpp
    M libc/utils/MPFRWrapper/MPFRUtils.h
    M libclc/generic/include/clc/convert.h
    M libclc/generic/lib/gen_convert.py
    M libcxx/CMakeLists.txt
    M libcxx/benchmarks/CMakeLists.txt
    A libcxx/benchmarks/algorithms/set_intersection.bench.cpp
    A libcxx/cmake/Modules/HandleLibC.cmake
    M libcxx/cmake/caches/Apple.cmake
    M libcxx/cmake/config-ix.cmake
    M libcxx/docs/FeatureTestMacroTable.rst
    M libcxx/docs/ReleaseNotes/19.rst
    M libcxx/docs/ReleaseNotes/20.rst
    M libcxx/docs/Status/Cxx23Issues.csv
    M libcxx/docs/Status/Cxx23Papers.csv
    M libcxx/docs/Status/Cxx2cIssues.csv
    M libcxx/include/CMakeLists.txt
    M libcxx/include/__algorithm/iterator_operations.h
    M libcxx/include/__algorithm/lower_bound.h
    M libcxx/include/__algorithm/set_intersection.h
    M libcxx/include/__chrono/weekday.h
    M libcxx/include/__math/traits.h
    M libcxx/include/__memory/allocator_traits.h
    A libcxx/include/__memory/inout_ptr.h
    A libcxx/include/__memory/out_ptr.h
    M libcxx/include/__memory/pointer_traits.h
    M libcxx/include/__type_traits/is_enum.h
    R libcxx/include/__type_traits/is_scoped_enum.h
    M libcxx/include/__type_traits/remove_cv.h
    M libcxx/include/memory
    M libcxx/include/module.modulemap
    M libcxx/include/string
    M libcxx/include/type_traits
    M libcxx/include/version
    M libcxx/modules/std/memory.inc
    M libcxx/src/CMakeLists.txt
    A libcxx/test/configs/apple-libc++-shared.cfg.in
    M libcxx/test/std/algorithms/alg.sorting/alg.set.operations/set.intersection/ranges_set_intersection.pass.cpp
    A libcxx/test/std/algorithms/alg.sorting/alg.set.operations/set.intersection/set_intersection_complexity.pass.cpp
    M libcxx/test/std/iterators/iterator.primitives/range.iter.ops/range.iter.ops.advance/iterator_count.pass.cpp
    M libcxx/test/std/iterators/iterator.primitives/range.iter.ops/range.iter.ops.advance/iterator_count_sentinel.pass.cpp
    M libcxx/test/std/iterators/iterator.primitives/range.iter.ops/range.iter.ops.advance/iterator_sentinel.pass.cpp
    M libcxx/test/std/language.support/support.limits/support.limits.general/memory.version.compile.pass.cpp
    M libcxx/test/std/language.support/support.limits/support.limits.general/version.version.compile.pass.cpp
    M libcxx/test/std/numerics/c.math/isfinite.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.drop/begin.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.drop/types.h
    M libcxx/test/std/ranges/range.adaptors/range.transform/types.h
    M libcxx/test/std/time/time.cal/time.cal.weekday/time.cal.weekday.nonmembers/comparisons.pass.cpp
    M libcxx/test/std/time/time.clock/time.clock.file/now.pass.cpp
    A libcxx/test/std/utilities/smartptr/adapt/inout_ptr/inout_ptr.general.pass.cpp
    A libcxx/test/std/utilities/smartptr/adapt/inout_ptr/inout_ptr.verify.cpp
    A libcxx/test/std/utilities/smartptr/adapt/inout_ptr/inout_ptr_t.convert.pass.cpp
    A libcxx/test/std/utilities/smartptr/adapt/inout_ptr/inout_ptr_t.ctor.pass.cpp
    A libcxx/test/std/utilities/smartptr/adapt/inout_ptr/inout_ptr_t.verify.cpp
    A libcxx/test/std/utilities/smartptr/adapt/out_ptr/out_ptr.general.pass.cpp
    A libcxx/test/std/utilities/smartptr/adapt/out_ptr/out_ptr.verify.cpp
    A libcxx/test/std/utilities/smartptr/adapt/out_ptr/out_ptr_t.convert.pass.cpp
    A libcxx/test/std/utilities/smartptr/adapt/out_ptr/out_ptr_t.ctor.pass.cpp
    A libcxx/test/std/utilities/smartptr/adapt/out_ptr/out_ptr_t.verify.cpp
    A libcxx/test/std/utilities/smartptr/adapt/types.h
    M libcxx/test/support/test_iterators.h
    M libcxx/utils/ci/apple-install-libcxx.sh
    M libcxx/utils/generate_feature_test_macro_components.py
    M libcxx/utils/libcxx/test/params.py
    A libcxxabi/src/vendor/apple/shims.cpp
    A libcxxabi/test/configs/apple-libc++abi-shared.cfg.in
    M lld/ELF/Arch/AArch64.cpp
    M lld/MachO/Config.h
    M lld/MachO/Driver.cpp
    M lld/MachO/InputFiles.cpp
    M lld/MachO/Options.td
    M lld/test/ELF/aarch64-reloc-implicit-addend.test
    A lld/test/MachO/reproduce-thin-archive-objc.s
    M lld/test/MachO/reproduce-thin-archives.s
    M lldb/bindings/headers.swig
    A lldb/bindings/interface/SBSaveCoreOptionsDocstrings.i
    M lldb/bindings/interfaces.swig
    M lldb/include/lldb/API/LLDB.h
    M lldb/include/lldb/API/SBDefines.h
    M lldb/include/lldb/API/SBError.h
    M lldb/include/lldb/API/SBFileSpec.h
    M lldb/include/lldb/API/SBProcess.h
    A lldb/include/lldb/API/SBSaveCoreOptions.h
    M lldb/include/lldb/Core/PluginManager.h
    A lldb/include/lldb/Symbol/SaveCoreOptions.h
    M lldb/include/lldb/lldb-forward.h
    M lldb/include/lldb/lldb-private-interfaces.h
    M lldb/packages/Python/lldbsuite/test/make/Makefile.rules
    M lldb/source/API/CMakeLists.txt
    M lldb/source/API/SBProcess.cpp
    A lldb/source/API/SBSaveCoreOptions.cpp
    M lldb/source/Commands/CommandObjectProcess.cpp
    M lldb/source/Core/PluginManager.cpp
    M lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp
    M lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.h
    M lldb/source/Plugins/ObjectFile/Minidump/ObjectFileMinidump.cpp
    M lldb/source/Plugins/ObjectFile/Minidump/ObjectFileMinidump.h
    M lldb/source/Plugins/ObjectFile/PECOFF/ObjectFilePECOFF.cpp
    M lldb/source/Plugins/ObjectFile/PECOFF/ObjectFilePECOFF.h
    M lldb/source/Plugins/ObjectFile/PECOFF/WindowsMiniDump.cpp
    M lldb/source/Plugins/ObjectFile/PECOFF/WindowsMiniDump.h
    M lldb/source/Symbol/CMakeLists.txt
    A lldb/source/Symbol/SaveCoreOptions.cpp
    M lldb/test/API/functionalities/process_save_core/TestProcessSaveCore.py
    M lldb/test/API/functionalities/process_save_core_minidump/TestProcessSaveCoreMinidump.py
    A lldb/test/API/python_api/sbsavecoreoptions/TestSBSaveCoreOptions.py
    M llvm/cmake/modules/LLVMExternalProjectUtils.cmake
    M llvm/docs/CompileCudaWithLLVM.rst
    M llvm/docs/GlobalISel/GenericOpcode.rst
    M llvm/include/llvm/ADT/SetOperations.h
    M llvm/include/llvm/Analysis/Loads.h
    M llvm/include/llvm/Analysis/TargetLibraryInfo.def
    M llvm/include/llvm/Analysis/ValueLattice.h
    M llvm/include/llvm/Bitcode/LLVMBitCodes.h
    M llvm/include/llvm/CodeGen/AsmPrinter.h
    M llvm/include/llvm/CodeGen/GlobalISel/MachineIRBuilder.h
    M llvm/include/llvm/CodeGen/TargetCallingConv.h
    M llvm/include/llvm/ExecutionEngine/Orc/ExecutionUtils.h
    M llvm/include/llvm/Frontend/OpenMP/OMP.td
    M llvm/include/llvm/IR/Attributes.td
    M llvm/include/llvm/MC/MCPseudoProbe.h
    M llvm/include/llvm/Object/ArchiveWriter.h
    M llvm/include/llvm/SandboxIR/SandboxIR.h
    M llvm/include/llvm/SandboxIR/Tracker.h
    M llvm/include/llvm/Support/TargetOpcodes.def
    M llvm/include/llvm/Target/GenericOpcodes.td
    M llvm/lib/Analysis/LazyValueInfo.cpp
    M llvm/lib/Analysis/Loads.cpp
    M llvm/lib/Analysis/LoopAccessAnalysis.cpp
    M llvm/lib/Analysis/TargetLibraryInfo.cpp
    M llvm/lib/Bitcode/Writer/BitcodeWriter.cpp
    M llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
    M llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
    M llvm/lib/CodeGen/GlobalISel/MachineIRBuilder.cpp
    M llvm/lib/CodeGen/LiveDebugValues/InstrRefBasedImpl.cpp
    M llvm/lib/CodeGen/LiveDebugValues/InstrRefBasedImpl.h
    M llvm/lib/CodeGen/MachineVerifier.cpp
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
    M llvm/lib/ExecutionEngine/Orc/ExecutionUtils.cpp
    M llvm/lib/IR/Verifier.cpp
    M llvm/lib/Object/ArchiveWriter.cpp
    M llvm/lib/SandboxIR/SandboxIR.cpp
    M llvm/lib/SandboxIR/Tracker.cpp
    M llvm/lib/Target/AArch64/AArch64Arm64ECCallLowering.cpp
    M llvm/lib/Target/AArch64/AArch64AsmPrinter.cpp
    M llvm/lib/Target/AArch64/AArch64CallingConvention.td
    M llvm/lib/Target/AArch64/AArch64FrameLowering.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/AArch64/AArch64InstrInfo.td
    M llvm/lib/Target/AArch64/MCTargetDesc/AArch64ELFStreamer.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUInstCombineIntrinsic.cpp
    M llvm/lib/Target/AMDGPU/FLATInstructions.td
    M llvm/lib/Target/AMDGPU/SIFoldOperands.cpp
    M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchMCCodeEmitter.cpp
    M llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/lib/Target/SystemZ/SystemZInstrHFP.td
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/lib/Transforms/IPO/SampleProfile.cpp
    M llvm/lib/Transforms/Instrumentation/MemorySanitizer.cpp
    M llvm/lib/Transforms/Scalar/SimpleLoopUnswitch.cpp
    M llvm/lib/Transforms/Utils/BuildLibCalls.cpp
    M llvm/lib/Transforms/Utils/CodeExtractor.cpp
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/lib/Transforms/Vectorize/VectorCombine.cpp
    M llvm/test/Analysis/UniformityAnalysis/AMDGPU/intrinsics.ll
    A llvm/test/CodeGen/AArch64/GlobalISel/irtranslator-sucmp.ll
    M llvm/test/CodeGen/AArch64/GlobalISel/legalizer-info-validation.mir
    M llvm/test/CodeGen/AArch64/arm64-neon-copy.ll
    A llvm/test/CodeGen/AArch64/arm64ec-hybrid-patchable.ll
    M llvm/test/CodeGen/AArch64/double_reduct.ll
    M llvm/test/CodeGen/AArch64/fixed-point-conv-vec-pat.ll
    M llvm/test/CodeGen/AArch64/sve-doublereduct.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-length-int-to-fp.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-vector-zext.ll
    M llvm/test/CodeGen/AArch64/sve-int-reduce.ll
    A llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-reductions.ll
    M llvm/test/CodeGen/AArch64/vecreduce-add.ll
    A llvm/test/CodeGen/AMDGPU/fold-zero-high-bits-clear-kill-flags.mir
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.global.load.tr-w32.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.global.load.tr-w64.ll
    A llvm/test/CodeGen/NVPTX/i1-ext-load.ll
    A llvm/test/CodeGen/NVPTX/i1-load-lower.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vwmul.ll
    M llvm/test/CodeGen/X86/bitreverse.ll
    M llvm/test/CodeGen/X86/combine-udiv.ll
    M llvm/test/CodeGen/X86/gfni-funnel-shifts.ll
    M llvm/test/CodeGen/X86/gfni-rotates.ll
    M llvm/test/CodeGen/X86/gfni-shifts.ll
    M llvm/test/CodeGen/X86/omit-urem-of-power-of-two-or-zero-when-comparing-with-zero.ll
    M llvm/test/CodeGen/X86/vector-bitreverse.ll
    M llvm/test/DebugInfo/MIR/X86/live-debug-values-fragments.mir
    A llvm/test/ExecutionEngine/JITLink/x86-64/MachO_archive_two_objects_same_name.s
    A llvm/test/Instrumentation/MemorySanitizer/AArch64/neon_vst_origins.ll
    M llvm/test/MC/AArch64/elf-reloc-ptrauth.s
    M llvm/test/MC/AArch64/mapping-across-sections.s
    M llvm/test/MC/SystemZ/insn-bad.s
    M llvm/test/MC/SystemZ/insn-good.s
    A llvm/test/MachineVerifier/test_uscmp.mir
    M llvm/test/Object/archive-malformed-object.test
    M llvm/test/TableGen/GlobalISelCombinerEmitter/match-table-cxx.td
    M llvm/test/TableGen/GlobalISelEmitter.td
    M llvm/test/Transforms/CorrelatedValuePropagation/ashr.ll
    M llvm/test/Transforms/CorrelatedValuePropagation/basic.ll
    M llvm/test/Transforms/CorrelatedValuePropagation/vectors.ll
    M llvm/test/Transforms/GVN/condprop.ll
    M llvm/test/Transforms/InferFunctionAttrs/annotate.ll
    M llvm/test/Transforms/InstCombine/AMDGPU/amdgcn-intrinsics.ll
    A llvm/test/Transforms/LoopVectorize/AArch64/divs-with-scalable-vfs.ll
    A llvm/test/Transforms/LoopVectorize/SystemZ/scalar-steps-with-users-demanding-all-lanes-and-first-lane-only.ll
    M llvm/test/Transforms/SCCP/phis.ll
    A llvm/test/Transforms/SLPVectorizer/X86/revec-fix-99411.ll
    R llvm/test/Transforms/SLPVectorizer/revec-fix-99411.ll
    A llvm/test/Transforms/SimpleLoopUnswitch/preserving-debugloc-trivial-terminators.ll
    A llvm/test/Transforms/VectorCombine/RISCV/vecreduce-of-cast.ll
    A llvm/test/Verifier/byval-size-limit.ll
    M llvm/test/Verifier/param-align.ll
    M llvm/test/Verifier/param-attr-align.ll
    M llvm/test/Verifier/param-ret-align.ll
    M llvm/test/tools/llvm-tli-checker/ps4-tli-check.yaml
    M llvm/unittests/ADT/SetOperationsTest.cpp
    M llvm/unittests/Analysis/LoadsTest.cpp
    M llvm/unittests/Analysis/TargetLibraryInfoTest.cpp
    M llvm/unittests/CodeGen/InstrRefLDVTest.cpp
    M llvm/unittests/SandboxIR/TrackerTest.cpp
    M llvm/utils/TableGen/Common/DAGISelMatcher.cpp
    M llvm/utils/TableGen/Common/DAGISelMatcher.h
    M llvm/utils/TableGen/DAGISelMatcherEmitter.cpp
    M llvm/utils/TableGen/DAGISelMatcherGen.cpp
    M llvm/utils/gn/secondary/libcxx/include/BUILD.gn
    M llvm/utils/gn/secondary/lldb/source/API/BUILD.gn
    M llvm/utils/gn/secondary/lldb/source/Symbol/BUILD.gn
    M llvm/utils/lit/lit/builtin_commands/cat.py
    M mlir/include/mlir/Dialect/Affine/Analysis/LoopAnalysis.h
    M mlir/include/mlir/Dialect/OpenMP/OpenMPClauses.td
    M mlir/lib/Dialect/Affine/Analysis/LoopAnalysis.cpp
    M mlir/lib/Dialect/Affine/Transforms/LoopTiling.cpp
    M mlir/lib/Dialect/ArmSME/Transforms/TileAllocation.cpp
    M mlir/lib/Dialect/Linalg/Transforms/Vectorization.cpp
    M mlir/lib/Dialect/SPIRV/Transforms/SPIRVConversion.cpp
    M mlir/lib/Dialect/Tosa/IR/TosaCanonicalizations.cpp
    M mlir/test/CAPI/rewrite.c
    M mlir/test/Dialect/Affine/loop-tiling-validity.mlir
    M mlir/test/Dialect/ArmSME/tile-allocation-liveness.mlir
    M mlir/test/Dialect/Linalg/vectorization-unsupported.mlir
    M mlir/test/Dialect/Tosa/constant-op-fold.mlir
    A openmp/runtime/test/transform/interchange/foreach.cpp
    A openmp/runtime/test/transform/interchange/intfor.c
    A openmp/runtime/test/transform/interchange/iterfor.cpp
    A openmp/runtime/test/transform/interchange/parallel-wsloop-collapse-foreach.cpp
    A openmp/runtime/test/transform/interchange/parallel-wsloop-collapse-intfor.cpp
    M utils/bazel/WORKSPACE
    M utils/bazel/llvm-project-overlay/libc/test/src/stdlib/BUILD.bazel
    M utils/bazel/llvm-project-overlay/lldb/BUILD.bazel
    M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
    A utils/bazel/third_party_build/pybind.BUILD

  Log Message:
  -----------
  [𝘀𝗽𝗿] changes introduced through rebase

Created using spr 1.3.5-bogner

[skip ci]


Compare: https://github.com/llvm/llvm-project/compare/27e012f10bb9...92e001482a51

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