[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:46:23 PDT 2024


  Branch: refs/heads/users/wangleiat/spr/loongarch-support-parsing-the-le_hi20addlo12_r-modifiers
  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: f498933a87398e0c95eb5ea4fdd77faa2b5e9c30
      https://github.com/llvm/llvm-project/commit/f498933a87398e0c95eb5ea4fdd77faa2b5e9c30
  Author: wanglei <wanglei at loongson.cn>
  Date:   2024-07-19 (Fri, 19 Jul 2024)

  Changed paths:
    M bolt/include/bolt/Rewrite/DWARFRewriter.h
    M bolt/lib/Rewrite/DWARFRewriter.cpp
    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/include/clang/Basic/BuiltinsAMDGPU.def
    M clang/include/clang/Basic/DiagnosticDriverKinds.td
    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/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/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/Preprocessor.cpp
    M clang/lib/Sema/SemaDecl.cpp
    M clang/lib/Sema/SemaType.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
    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/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/hexagon-toolchain-linux.c
    M clang/test/SemaCXX/cxx-deprecated.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/unittests/Lex/DependencyDirectivesScannerTest.cpp
    M compiler-rt/cmake/base-config-ix.cmake
    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/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
    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/benchmarks/CMakeLists.txt
    A libcxx/benchmarks/algorithms/set_intersection.bench.cpp
    M libcxx/cmake/caches/Apple.cmake
    M libcxx/docs/ReleaseNotes/19.rst
    M libcxx/docs/ReleaseNotes/20.rst
    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/__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/module.modulemap
    M libcxx/include/string
    M libcxx/include/type_traits
    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/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/support/test_iterators.h
    M libcxx/utils/ci/apple-install-libcxx.sh
    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/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
    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/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/Analysis/ValueLattice.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/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/LoopAccessAnalysis.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/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/AMDGPU/AMDGPUInstCombineIntrinsic.cpp
    M llvm/lib/Target/AMDGPU/FLATInstructions.td
    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/Utils/BuildLibCalls.cpp
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/lib/Transforms/Vectorize/VectorCombine.cpp
    M llvm/test/Analysis/UniformityAnalysis/AMDGPU/intrinsics.ll
    M llvm/test/CodeGen/AArch64/GlobalISel/legalizer-info-validation.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/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
    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/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/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
    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/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/unittests/ADT/SetOperationsTest.cpp
    M llvm/unittests/CodeGen/InstrRefLDVTest.cpp
    M llvm/unittests/SandboxIR/TrackerTest.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/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/SPIRV/Transforms/SPIRVConversion.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 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:
  -----------
  Add `TODO` comments

Created using spr 1.3.5-bogner


Compare: https://github.com/llvm/llvm-project/compare/a683ddd1f04a...f498933a8739

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