FailedChanges

Summary

  1. [lld][MachO] Fix typo in special-symbol-ld-previous.s (details)
  2. [LoopUnroll] Separate peeling from unrolling (details)
  3. Revert "[LLDB/API] Expose args and env from SBProcessInfo." (details)
  4. [LoopUnroll] Regenerate test checks (NFC) (details)
  5. [NFC] Promote willNotOverflow() / getStrengthenedNoWrapFlagsFromBinOp() from IndVars into SCEV proper (details)
  6. [libc++][doc] Update Format status. (details)
  7. Make TableGenGlobalISel an object library (details)
Commit cf29a92b9026a901855ce6998dc96d796c24c57e by alexshap
[lld][MachO] Fix typo in special-symbol-ld-previous.s

Fix typo in the test special-symbol-ld-previous.s. NFC.
The file was modifiedlld/test/MachO/special-symbol-ld-previous.s
Commit db45746821ab01a54f8df033991c3280c4284e3b by nikita.ppv
[LoopUnroll] Separate peeling from unrolling

Loop peeling is currently performed as part of UnrollLoop().
Outside test scenarios, it is always performed with an unroll
count of 1. This means that unrolling doesn't actually do anything
apart from performing post-unroll simplification.

When testing, it's currently possible to specify both an explicit
peel count and an explicit unroll count. This doesn't perform any
sensible operation and may result in miscompiles, see
https://bugs.llvm.org/show_bug.cgi?id=45939.

This patch moves peeling from UnrollLoop() into tryToUnrollLoop(),
so that peeling does not also perform a susequent unroll. We only
run the post-unroll simplifications. Specifying both an explicit
peel count and unroll count is forbidden.

In the future, we may want to support both (non-PGO) peeling a
loop and unrolling it, but this needs to be done by first performing
the peel and then recalculating unrolling heuristics on a now
possibly analyzable loop.

Differential Revision: https://reviews.llvm.org/D103362
The file was modifiedllvm/include/llvm/Transforms/Utils/UnrollLoop.h
The file was modifiedllvm/lib/Transforms/Scalar/LoopUnrollPass.cpp
The file was modifiedllvm/test/Transforms/LoopUnroll/pr33437.ll
The file was modifiedllvm/test/Transforms/LoopUnroll/wrong_assert_in_peeling.ll
The file was modifiedllvm/lib/Transforms/Utils/LoopUnroll.cpp
The file was addedllvm/test/Transforms/LoopUnroll/peel-loop-and-unroll.ll
The file was modifiedllvm/lib/Transforms/Utils/LoopUnrollRuntime.cpp
The file was modifiedllvm/test/Transforms/LoopUnroll/pr45939-peel-count-and-complete-unroll.ll
Commit 2606918f467519f1634a67ee386211e99665fd23 by bruce.mitchener
Revert "[LLDB/API] Expose args and env from SBProcessInfo."

This reverts commit 8d33437d030af27fff21dd3fd0e66893b0148217.

This broke one of the buildbots.
The file was modifiedlldb/include/lldb/API/SBProcessInfo.h
The file was modifiedlldb/test/API/python_api/process/TestProcessAPI.py
The file was modifiedlldb/bindings/interface/SBProcessInfo.i
The file was modifiedlldb/include/lldb/API/SBEnvironment.h
The file was modifiedlldb/source/API/SBProcessInfo.cpp
Commit 92ce29ee45b26513a9f4e42c6f287f43cb3de238 by nikita.ppv
[LoopUnroll] Regenerate test checks (NFC)
The file was modifiedllvm/test/Transforms/LoopUnroll/runtime-loop5.ll
Commit e350494fb044c5badec9cd8bfd7ab05026babf81 by lebedev.ri
[NFC] Promote willNotOverflow() / getStrengthenedNoWrapFlagsFromBinOp() from IndVars into SCEV proper

We might want to use it when creating SCEV proper in createSCEV(),
now that we don't `forgetValue()` in `SimplifyIndvar::strengthenOverflowingOperation()`,
which might have caused us to loose some optimization potential.
The file was modifiedllvm/lib/Transforms/Utils/SimplifyIndVar.cpp
The file was modifiedllvm/include/llvm/Analysis/ScalarEvolution.h
The file was modifiedllvm/lib/Analysis/ScalarEvolution.cpp
Commit fbe4c839e8a2c849bc604ec3c6c03efb01482fb4 by koraq
[libc++][doc] Update Format status.

The first part of the <format> header patch series is now complete for
review. This updates the status document.
The file was modifiedlibcxx/docs/FormatIssuePaperStatus.csv
The file was modifiedlibcxx/docs/FormatProposalStatus.csv
Commit dc1e7b73b81811b74a4fbde4c5cfab5a3ea7f820 by aaronpuchert
Make TableGenGlobalISel an object library

That's how it was originally intended but that wasn't possible because
we still needed to support older CMake versions.

The problem here is that the sources in TableGenGlobalISel are meant to
be linked into both llvm-tblgen and TableGenTests (a unit test), but not
be part of LLVM proper. So they shouldn't be an ordinary LLVM component.
Because they are used in llvm-tblgen, they can't draw in the LLVM dylib
dependency, but then we'd have to do the same thing in TableGenTests to
make sure we don't link both a static Support library and another copy
through the LLVM dylib.

With an object library we're just reusing the object files and don't
have to care about dependencies at all.

Differential Revision: https://reviews.llvm.org/D74588
The file was modifiedllvm/unittests/TableGen/CMakeLists.txt