SuccessChanges

Summary

  1. [APFloat] convertToDouble/Float can work on shorter types (details)
  2. GlobalISel: Help reduce operation width for instruction with two results. (details)
  3. [scudo] Fix compilation after D102886 (details)
  4. [HWASAN] No code changed, Only clang-format for HWAddressSanitizer.cpp (details)
  5. [scudo][NFC] Split BasicTest further (details)
  6. [clang][driver] Treat -flto=[auto,jobserver] as -flto (details)
  7. [lit][gtest] Support SKIPPED tests (details)
  8. [unittests][CodeGen] Mark tests that cannot be executed with GTEST_SKIP() (details)
  9. Allow incomplete template types in unique_function arguments (details)
  10. [lldb] Match test dependencies name to other LLVM projects. (details)
Commit c162f086ba632ffaedfe92d63bf21571bc8ae4da by sepavloff
[APFloat] convertToDouble/Float can work on shorter types

Previously APFloat::convertToDouble may be called only for APFloats that
were built using double semantics. Other semantics like single precision
were not allowed although corresponding numbers could be converted to
double without loss of precision. The similar restriction applied to
APFloat::convertToFloat.

With this change any APFloat that can be precisely represented by double
can be handled with convertToDouble. Behavior of convertToFloat was
updated similarly. It make the conversion operations more convenient and
adds support for formats like half and bfloat.

Differential Revision: https://reviews.llvm.org/D102671
The file was modifiedllvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
The file was modifiedllvm/lib/Analysis/ConstantFolding.cpp
The file was modifiedllvm/include/llvm/ADT/APFloat.h
The file was modifiedllvm/lib/IR/Core.cpp
The file was modifiedllvm/unittests/ADT/APFloatTest.cpp
The file was modifiedllvm/lib/IR/AsmWriter.cpp
The file was modifiedllvm/lib/Support/APFloat.cpp
Commit ab60e361c261ae0d65608dc01023766eae2e93b5 by Christudasan.Devadasan
GlobalISel: Help reduce operation width for instruction with two results.

The function `reduceOperationWidth` helps to legalize a vector
operation either by narrowing its type or by scalarizing the
operation itself. It currently supports instructions with one result.
This patch, in addition allows the same for instructions with two
results (for instance, G_SDIVREM).

Reviewed By: arsenm

Differential Revision: https://reviews.llvm.org/D100725
The file was modifiedllvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
Commit 384a460e59bc67d4225b0c7e528dcb0c84668d49 by Vitaly Buka
[scudo] Fix compilation after D102886
The file was modifiedcompiler-rt/lib/scudo/standalone/tests/secondary_test.cpp
Commit 5684851cb0151d61b18c2a34b70203923d1cd9ec by xiang1.zhang
[HWASAN] No code changed, Only clang-format for HWAddressSanitizer.cpp
The file was modifiedllvm/lib/Transforms/Instrumentation/HWAddressSanitizer.cpp
Commit 53ec41a49c2b32bab74bb1ddf435bea4bf4b8a3a by Vitaly Buka
[scudo][NFC] Split BasicTest further

It's still the slowest test under our emulator.
The file was modifiedcompiler-rt/lib/scudo/standalone/tests/combined_test.cpp
Commit 95423c7c990d9100deb0056bd9738717cb2bcf2d by tbaeder
[clang][driver] Treat -flto=[auto,jobserver] as -flto

Instead of ignoring flto=auto and -flto=jobserver, treat them as -flto
and pass -flto=full along.

Differential Revision: https://reviews.llvm.org/D102479
The file was modifiedclang/lib/Driver/Driver.cpp
The file was modifiedclang/include/clang/Driver/Options.td
The file was modifiedclang/lib/Driver/ToolChains/Clang.cpp
The file was modifiedclang/test/Driver/lto.c
Commit 21b40f02d253be1b4b1e89c316c80ba6b6a7aa44 by ikudrin
[lit][gtest] Support SKIPPED tests

This updates the googletest format to support tests that use GTEST_SKIP(),
which is now available with the updated googletest framework.

Differential Revision: https://reviews.llvm.org/D102694
The file was modifiedllvm/utils/lit/tests/googletest-format.py
The file was modifiedllvm/utils/lit/tests/Inputs/googletest-format/DummySubDir/OneTest.py
The file was modifiedllvm/utils/lit/lit/formats/googletest.py
Commit 5bbf1feab5a40337ae8288eb9c9d8d37103c463e by ikudrin
[unittests][CodeGen] Mark tests that cannot be executed with GTEST_SKIP()

This helps to distinguish such tests from successfully passed ones.

Differential Revision: https://reviews.llvm.org/D102754
The file was modifiedllvm/unittests/CodeGen/TargetOptionsTest.cpp
The file was modifiedllvm/unittests/CodeGen/AArch64SelectionDAGTest.cpp
The file was modifiedllvm/unittests/CodeGen/AsmPrinterDwarfTest.cpp
The file was modifiedllvm/unittests/CodeGen/SelectionDAGAddressAnalysisTest.cpp
The file was modifiedllvm/unittests/CodeGen/DIEHashTest.cpp
The file was modifiedllvm/unittests/CodeGen/PassManagerTest.cpp
The file was modifiedllvm/unittests/CodeGen/DIETest.cpp
Commit e3eaff10b29d8bb85a0d09e6bb72fbdb7cc9c3ea by yrouban
Allow incomplete template types in unique_function arguments

We can't declare unique_function that has in its arguments a reference to
a template type with an incomplete argument.
For instance, we can't declare unique_function<void(SmallVectorImpl<A>&)>
when A is forward declared.

This is because SFINAE will trigger a hard error in this case, when instantiating
IsSizeLessThanThresholdT with the incomplete type.

This patch specialize AdjustedParamT for references to remove this error.

Committed on behalf of: @math-fehr (Fehr Mathieu)

Reviewed By: DaniilSuchkov, yrouban
The file was modifiedllvm/unittests/ADT/FunctionExtrasTest.cpp
The file was modifiedllvm/include/llvm/ADT/FunctionExtras.h
Commit 5e327785da36fa3a00767cfea0a47fcb0f0814aa by smeenai
[lldb] Match test dependencies name to other LLVM projects.

Other LLVM projects use the suffix `-depends` for the test dependencies,
however LLDB uses `-deps` and seems to be the only project under the
LLVM to do so.

In order to make the projects more homogeneous, switch all the
references to `lldb-test-deps` to `lldb-test-depends`.

Additionally, provide a compatibility target with the old name and
depending on the new name, in order to not break anyone workflow.

Reviewed By: JDevlieghere

Differential Revision: https://reviews.llvm.org/D102889
The file was modifiedlldb/test/API/CMakeLists.txt
The file was modifiedlldb/test/Unit/CMakeLists.txt
The file was modifiedlldb/utils/lldb-dotest/CMakeLists.txt
The file was modifiedlldb/test/CMakeLists.txt
The file was modifiedlldb/test/Shell/CMakeLists.txt
The file was modifiedlldb/utils/lldb-repro/CMakeLists.txt