AbortedChanges

Summary

  1. [ARM] Add an extra memset test showing reverted WLSTP loops. NFC (details)
  2. Revert "[X86][SSE] Pull out combineToHorizontalAddSub helper from inside (F)ADD/SUB combines. NFCI." (details)
  3. Support GCC's -fstack-usage flag (details)
  4. [Compiler-rt] Downgrade fatal error about unsupported test configuration (details)
  5. [Compiler-rt] Downgrade another fatal error to warning (details)
  6. NFC. Refactored DIPrinter for support embedded source. (details)
  7. [X86][SSE] Add SSE3 coverage to PHADD/SUB generation tests (details)
  8. [CaptureTracking] Only check reachability for capture candidates (details)
  9. [X86] Remove unused check-prefixes (details)
Commit aaf2c7b518b3606139171aca3fd030287039cedd by david.green
[ARM] Add an extra memset test showing reverted WLSTP loops. NFC
The file was addedllvm/test/CodeGen/Thumb2/mve-memtp-loop.ll
The file was removedllvm/test/CodeGen/Thumb2/mve-tp-loop.ll
Commit c012a388a15b34c39b53cbfff1b175ac03206dfa by thakis
Revert "[X86][SSE] Pull out combineToHorizontalAddSub helper from inside (F)ADD/SUB combines. NFCI."

This reverts commit b95a103808acfd8f33290d3e80e28af434454b28.
Makes clang assert very early in a Chromium build. See
https://bugs.chromium.org/p/chromium/issues/detail?id=1209490#c1
for a standalone repro.
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
Commit c9b36a041fd70de0617ea7e241f520b345e12cac by pzheng
Support GCC's -fstack-usage flag

This patch adds support for GCC's -fstack-usage flag. With this flag, a stack
usage file (i.e., .su file) is generated for each input source file. The format
of the stack usage file is also similar to what is used by GCC. For each
function defined in the source file, a line with the following information is
produced in the .su file.

<source_file>:<line_number>:<function_name> <size_in_byte> <static/dynamic>

"Static" means that the function's frame size is static and the size info is an
accurate reflection of the frame size. While "dynamic" means the function's
frame size can only be determined at run-time because the function manipulates
the stack dynamically (e.g., due to variable size objects). The size info only
reflects the size of the fixed size frame objects in this case and therefore is
not a reliable measure of the total frame size.

Reviewed By: MaskRay

Differential Revision: https://reviews.llvm.org/D100509
The file was modifiedclang/lib/Driver/ToolChains/Clang.cpp
The file was modifiedclang/lib/Frontend/CompilerInvocation.cpp
The file was modifiedclang/include/clang/Basic/CodeGenOptions.h
The file was modifiedclang/include/clang/Driver/Options.td
The file was addedclang/test/CodeGen/stack-usage.c
The file was modifiedllvm/include/llvm/CodeGen/AsmPrinter.h
The file was modifiedclang/docs/ReleaseNotes.rst
The file was modifiedclang/lib/CodeGen/BackendUtil.cpp
The file was addedclang/test/Driver/stack-usage.c
The file was modifiedllvm/include/llvm/Target/TargetOptions.h
The file was modifiedllvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
Commit 7085cd2f2945b1e73e1c66f78080c48cba9112e8 by Dan Liew
[Compiler-rt] Downgrade fatal error about unsupported test configuration
to a warning.

https://reviews.llvm.org/D101681 introduced a check to make sure the
compiler and compiler-rt were using the same library path when
`COMPILER_RT_TEST_STANDALONE_BUILD_LIBS=ON`, i.e. the developer's
intention is to test the just built libs rather that shipped with the
compiler used for testing.

It seems this broken some bots that are likely misconfigured.

So to unbreak them, for now let's make this a warning so the bot
owners can investigate without breaking their builds.
The file was modifiedcompiler-rt/test/lit.common.cfg.py
Commit b7f60d861ad7a8d03c09c0b72277eabaa53731fb by Dan Liew
[Compiler-rt] Downgrade another fatal error to warning

https://reviews.llvm.org/D101681 landed a change to check the testing
configuration which relies on using the `-print-runtime-dir` flag of
clang to determine where the runtime testing library is.

The patch treated not being able to find the path reported by clang
as an error. Unfortunately this seems to break the
`llvm-clang-win-x-aarch64` bot. Either the bot is misconfigured or
clang is reporting a bogus path.

To temporarily unbreak the bot downgrade the fatal error to a warning.
While we're here also print information about the command used to
determine the path to aid debugging.
The file was modifiedcompiler-rt/test/lit.common.cfg.py
Commit 88a8965a7d9355438cb6bc60cdeeac12858342c9 by aorlov
NFC. Refactored DIPrinter for support embedded source.

This patch introduces source loading and pruning functions.
It will allow to use the DWARF embedded source and use the same code for JSON printout.
No functional changes.

Reviewed By: dblaikie

Differential Revision: https://reviews.llvm.org/D102539
The file was modifiedllvm/include/llvm/DebugInfo/Symbolize/DIPrinter.h
The file was modifiedllvm/lib/DebugInfo/Symbolize/DIPrinter.cpp
Commit 0afb10de1449f41d026b3784369297cde011f69e by llvm-dev
[X86][SSE] Add SSE3 coverage to PHADD/SUB generation tests

This would have caught the regression identified in rGc012a388a15b.
The file was modifiedllvm/test/CodeGen/X86/haddsub-shuf.ll
Commit 6e9363c94230a8427c11c2d13b7c65164370ffae by nikita.ppv
[CaptureTracking] Only check reachability for capture candidates

Reachability queries are very expensive, and currently performed
for each instruction we look at, even though most of them will
not lead to a capture and are thus ultimately irrelevant. It is
more efficient to walk a few unnecessary instructions than to
perform unnecessary reachability queries.

Theoretically, this may produce worse results, because the additional
instructions considered may cause us to hit the use count limit
earlier. In practice, this does not appear to be a problem, e.g.
on test-suite O3 we report only one more captured-before with this
change, with no resulting codegen differences.

This makes PointerMayBeCapturedBefore() significantly cheaper in
practice, hopefully allowing it to be used in more places.
The file was modifiedllvm/lib/Analysis/CaptureTracking.cpp
Commit a80a5036a1f6b9a9eb4038b30458f9ab349efff8 by llvm-dev
[X86] Remove unused check-prefixes
The file was modifiedllvm/test/CodeGen/X86/haddsub-shuf.ll