SuccessChanges

Changes from Git (git http://labmaster3.local/git/llvm-project.git)

Summary

  1. [CGP] Ensure address offset is representable as int64_t (details)
  2. [analyzer] SATestBuild.py: Fix hang when one of the tasks fails (details)
  3. [RISCV] Register null target streamer for RISC-V (details)
  4. [VectorCombine] position pass after SLP in the optimization pipeline rather than before (details)
  5. [lldb/Test] Remove issue_verification subdirectory (details)
  6. [clang-tidy] Expand the list of functions in bugprone-unused-return-value (details)
  7. [DSE,MSSA] Add additional multiblock tests. (details)
  8. Revert "[analyzer] Change the default output type to PD_TEXT_MINIMAL in the frontend, error if an output loc is missing for PathDiagConsumers that need it" (details)
  9. [libc++] Make MoveOnly constexpr-friendly (details)
  10. Revert "[lldb] Enable C++14 when evaluating expressions in a C++14 frame" (details)
  11. Revert "[CodeGen] Add support for multiple memory operands in MachineInstr::mayAlias" (details)
  12. [libc++] Fix broken tuple tests (details)
  13. [PowerPC] Add support for vmsumudm (details)
  14. [lldb/Reproducers] Make the type tests work with reproducers (details)
  15. [lldb/Test] Disable APITests.exe on Windows (details)
  16. [libc++] Mark __u64toa and __u32toa as noexcept (details)
  17. [VectorCombine] set preserve alias analysis (details)
  18. Handle eExpressionThreadVanished in error switch to handle (details)
  19. [AMDGPU] Define 6 dword subregs (details)
  20. Reapply "[lit] GoogleTest framework should report failures if test binary crashes" (details)
Commit c479052a74b204071902c5290059de0f2365db47 by llvm-dev
[CGP] Ensure address offset is representable as int64_t

AddressingModeMatcher::matchAddr was calling getSExtValue for a constant before ensuring that we can actually represent the value as int64_t

Fixes PR46004 / OSSFuzz#22357
The file was modifiedllvm/lib/CodeGen/CodeGenPrepare.cpp
The file was addedllvm/test/CodeGen/X86/pr46004.ll
Commit a5b2503a8ab4fb21345fa9e2316530cdfaec1a60 by vsavchenko
[analyzer] SATestBuild.py: Fix hang when one of the tasks fails

Summary:
Tasks can crash with many different exceptions including SystemExit.
Bare except still causes a warning, so let's use BaseException instead.

Differential Revision: https://reviews.llvm.org/D80443
The file was modifiedclang/utils/analyzer/SATestBuild.py
Commit 22ed724975d265086149dcac8d2c983c1e49f13f by pzheng
[RISCV] Register null target streamer for RISC-V

Summary:
This fixes two llc crashes with the following tests when RISC-V is the default
target.

LLVM :: DebugInfo/Generic/global.ll
LLVM :: DebugInfo/Generic/inlined-strings.ll

Reviewers: HsiangKai

Reviewed By: HsiangKai

Subscribers: hiraditya, asb, rbar, johnrusso, simoncook, sabuasal, niosHD, kito-cheng, shiva0217, jrtc27, MaskRay, zzheng, edward-jones, rogfer01, MartinMosbeck, brucehoult, the_o, rkruppe, PkmX, jocewei, psnobl, benna, Jim, lenary, s.egerton, sameer.abuasal, apazos, luismarques, evandro, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D80352
The file was modifiedllvm/lib/Target/RISCV/MCTargetDesc/RISCVTargetStreamer.cpp
The file was modifiedllvm/lib/Target/RISCV/MCTargetDesc/RISCVTargetStreamer.h
The file was modifiedllvm/lib/Target/RISCV/MCTargetDesc/RISCVMCTargetDesc.cpp
Commit 6438ea45e053378a3c461a879805174eaa864bdb by spatel
[VectorCombine] position pass after SLP in the optimization pipeline rather than before

There are 2 known problem patterns shown in the test diffs here:
vector horizontal ops (an x86 specialization) and vector reductions.

SLP has greater ability to match and fold those than vector-combine,
so let SLP have first chance at that.

This is a quick fix while we continue to improve vector-combine and
possibly canonicalize to reduction intrinsics.

In the longer term, we should improve matching of these patterns
because if they were created in the "bad" forms shown here, then we
would miss optimizing them.

I'm not sure what is happening with alias analysis on the addsub test.
The old pass manager now shows an extra line for that, and we see an
improvement that comes from SLP vectorizing a store. I don't know
what's missing with the new pass manager to make that happen.
Strangely, I can't reproduce the behavior if I compile from C++ with
clang and invoke the new PM with "-fexperimental-new-pass-manager".

Differential Revision: https://reviews.llvm.org/D80236
The file was modifiedllvm/test/CodeGen/AMDGPU/opt-pipeline.ll
The file was modifiedllvm/test/Transforms/PhaseOrdering/X86/horiz-math.ll
The file was modifiedllvm/test/Other/opt-O3-pipeline.ll
The file was modifiedllvm/test/Other/new-pm-defaults.ll
The file was modifiedllvm/test/Other/new-pm-thinlto-postlink-samplepgo-defaults.ll
The file was modifiedllvm/test/Transforms/PhaseOrdering/X86/addsub.ll
The file was modifiedllvm/lib/Passes/PassBuilder.cpp
The file was modifiedllvm/test/Other/opt-pipeline-vector-passes.ll
The file was modifiedllvm/test/Other/opt-O2-pipeline.ll
The file was modifiedllvm/test/Transforms/PhaseOrdering/X86/vector-reductions.ll
The file was modifiedllvm/test/Other/opt-Os-pipeline.ll
The file was modifiedllvm/test/Other/new-pm-thinlto-defaults.ll
The file was modifiedllvm/lib/Transforms/IPO/PassManagerBuilder.cpp
The file was modifiedllvm/test/Other/new-pm-thinlto-postlink-pgo-defaults.ll
Commit d89c98a020c9903f31b659e3f5cc513ea878c900 by Jonas Devlieghere
[lldb/Test] Remove issue_verification subdirectory

These files haven't been touched since 2015. According to Pavel these
were intended to be test for the test framework which never really took
of and are mostly irrelevant by now.

Differential revision: https://reviews.llvm.org/D80408
The file was removedlldb/test/API/issue_verification/TestSignalOutsideTestMethod.py.park
The file was removedlldb/test/API/issue_verification/rerun_base.py
The file was removedlldb/test/API/issue_verification/disable.py
The file was removedlldb/test/API/issue_verification/TestRerunFileLevelTimeout.py.park
The file was removedlldb/test/API/issue_verification/TestSignal.py.park
The file was removedlldb/test/API/issue_verification/README.txt
The file was removedlldb/test/API/issue_verification/TestFail.py.park
The file was removedlldb/test/API/issue_verification/enable.py
The file was removedlldb/test/API/issue_verification/TestTimeout.py.park
The file was removedlldb/test/API/issue_verification/TestRerunFail.py.park
The file was removedlldb/test/API/issue_verification/TestRerunTimeout.py.park
The file was removedlldb/test/API/issue_verification/TestExpectedTimeout.py.park
The file was removedlldb/test/API/issue_verification/TestRerunInline.py.park
The file was removedlldb/test/API/issue_verification/inline_rerun_inferior.cpp
The file was removedlldb/test/API/issue_verification/TestInvalidDecorator.py.park
Commit e4bb3e25e4400151133fd3737f4842f2aeda1c1b by jranieri
[clang-tidy] Expand the list of functions in bugprone-unused-return-value

This change adds common C, C++, and POSIX functions to the clang-tidy unused return value checker.

Differential Revision: https://reviews.llvm.org/D76083
The file was modifiedclang-tools-extra/clang-tidy/bugprone/UnusedReturnValueCheck.cpp
Commit 7a325c14b46557694d08ae887bfe4bb64c8828ff by flo
[DSE,MSSA] Add additional multiblock tests.
The file was modifiedllvm/test/Transforms/DeadStoreElimination/MSSA/multiblock-multipath.ll
The file was modifiedllvm/test/Transforms/DeadStoreElimination/MSSA/multiblock-simple.ll
Commit 429f03089951d62fb370026905c87f1f25cf220f by dkszelethus
Revert "[analyzer] Change the default output type to PD_TEXT_MINIMAL in the frontend, error if an output loc is missing for PathDiagConsumers that need it"

This reverts commit fe1a3a7e8c8be33968b9a768666489823dabab10.
The file was removedclang/test/Analysis/output_types.cpp
The file was modifiedclang/lib/StaticAnalyzer/Frontend/AnalysisConsumer.cpp
The file was modifiedclang/include/clang/Basic/DiagnosticDriverKinds.td
The file was modifiedclang/lib/StaticAnalyzer/Core/SarifDiagnostics.cpp
The file was modifiedclang/include/clang/StaticAnalyzer/Core/AnalyzerOptions.h
The file was modifiedclang/lib/StaticAnalyzer/Core/HTMLDiagnostics.cpp
The file was modifiedclang/lib/StaticAnalyzer/Core/PlistDiagnostics.cpp
Commit a4b8ee64223f2b942f55237e40e3bd01d9b16893 by Louis Dionne
[libc++] Make MoveOnly constexpr-friendly

This is necessary when writing constexpr tests.
The file was modifiedlibcxx/test/support/MoveOnly.h
Commit 8cb75745412e4bc9592d2409cc6cfa4a2940d9e7 by Raphael Isemann
Revert "[lldb] Enable C++14 when evaluating expressions in a C++14 frame"

This reverts commit 5f88f39ab8154682c3b1eb9d7050a9412a55d9e7. It broke these
three tests on the Window bot:
  lldb-api :: commands/expression/completion/TestExprCompletion.py
  lldb-api :: lang/cpp/scope/TestCppScope.py
  lldb-api :: lang/cpp/standards/cpp11/TestCPP11Standard.py
The file was removedlldb/test/API/lang/cpp/standards/cpp11/TestCPP11Standard.py
The file was removedlldb/test/API/lang/cpp/standards/cpp11/Makefile
The file was removedlldb/test/API/lang/cpp/standards/cpp11/main.cpp
The file was removedlldb/test/API/lang/cpp/standards/cpp14/main.cpp
The file was removedlldb/test/API/lang/cpp/standards/cpp14/TestCPP14Standard.py
The file was modifiedlldb/source/Plugins/ExpressionParser/Clang/ClangExpressionParser.cpp
The file was removedlldb/test/API/lang/cpp/standards/cpp14/Makefile
Commit 65cd2c7a8015577fea15c861f41d2e4b5768961f by jean-michel.gorius
Revert "[CodeGen] Add support for multiple memory operands in MachineInstr::mayAlias"

This temporarily reverts commit 7019cea26dfef5882c96f278c32d0f9c49a5e516.

It seems that, for some targets, there are instructions with a lot of memory operands (probably more than would be expected). This causes a lot of buildbots to timeout and notify failed builds. While investigations are ongoing to find out why this happens, revert the changes.
The file was modifiedllvm/test/CodeGen/Thumb2/umulo-128-legalisation-lowering.ll
The file was modifiedllvm/test/CodeGen/Thumb2/mve-phireg.ll
The file was modifiedllvm/test/CodeGen/Thumb2/mve-float32regloops.ll
The file was modifiedllvm/test/CodeGen/X86/store_op_load_fold2.ll
The file was modifiedllvm/lib/CodeGen/ScheduleDAGInstrs.cpp
The file was modifiedllvm/test/CodeGen/ARM/cortex-a57-misched-vstm-wrback.ll
The file was modifiedllvm/test/CodeGen/AArch64/merge-store-dependency.ll
The file was modifiedllvm/test/CodeGen/ARM/big-endian-neon-fp16-bitconv.ll
The file was removedllvm/test/CodeGen/X86/instr-sched-multiple-memops.mir
The file was modifiedllvm/test/CodeGen/ARM/cortex-a57-misched-vldm-wrback.ll
The file was modifiedllvm/test/CodeGen/Thumb2/mve-vst3.ll
The file was modifiedllvm/test/CodeGen/ARM/cortex-a57-misched-vstm.ll
The file was modifiedllvm/lib/CodeGen/MachineInstr.cpp
Commit 861b52693373f08fd78f394a697a2250612b55e1 by Louis Dionne
[libc++] Fix broken tuple tests

The tests had copy-paste errors which started showing when an
unused-variable warning started being emitted after we made
the MoveOnly type constexpr (in a4b8ee64223f).
The file was modifiedlibcxx/test/libcxx/utilities/tuple/tuple.tuple/tuple.cnstr/disable_reduced_arity_initialization_extension.pass.cpp
The file was modifiedlibcxx/test/libcxx/utilities/tuple/tuple.tuple/tuple.cnstr/enable_reduced_arity_initialization_extension.pass.cpp
The file was modifiedlibcxx/test/std/utilities/tuple/tuple.tuple/tuple.cnstr/UTypes.pass.cpp
Commit a28e9f1208608f8d18750bb88ca74722fb0bcce4 by kamau.bridgeman
[PowerPC] Add support for vmsumudm

This patch adds support for Vector Multiply-Sum Unsigned Doubleword Modulo
instruction; vmsumudm.

Differential Revision: https://reviews.llvm.org/D80294
The file was modifiedllvm/include/llvm/IR/IntrinsicsPowerPC.td
The file was modifiedllvm/lib/Target/PowerPC/P9InstrResources.td
The file was modifiedllvm/lib/Target/PowerPC/PPCInstrAltivec.td
The file was modifiedllvm/test/MC/PowerPC/ppc64-encoding-vmx.s
The file was modifiedllvm/test/MC/Disassembler/PowerPC/ppc64-encoding-vmx.txt
Commit 5a85582eb26f0c8f6b8ef5a14385d608ef10385c by Jonas Devlieghere
[lldb/Reproducers] Make the type tests work with reproducers
The file was modifiedlldb/test/API/types/AbstractBase.py
The file was modifiedlldb/packages/Python/lldbsuite/test/lldbtest.py
Commit a67b2faa7c4cfbceffb4213f46769c45a5a9291a by Jonas Devlieghere
[lldb/Test] Disable APITests.exe on Windows

The generated binary (APITests.exe) is not a valid googletest binary. I
suspect it has something to do with us linking against liblldb.
The file was modifiedlldb/unittests/CMakeLists.txt
Commit 485b9083fe69601c9f3f91f7f1be9d7f3a26bb1e by Louis Dionne
[libc++] Mark __u64toa and __u32toa as noexcept

The two functions don't throw, and the generated code is better when
we explicitly tell the compiler that the functions are noexcept. This
isn't an ABI break because the signatures of the functions stay the
same with or without noexcept.

Fixes https://llvm.org/PR46016

Differential Revision: https://reviews.llvm.org/D80379
The file was modifiedlibcxx/src/charconv.cpp
The file was modifiedlibcxx/include/charconv
Commit 024098ae53497be2ddba82474451934611ce87d5 by spatel
[VectorCombine] set preserve alias analysis

As noted in D80236, moving the pass in the pipeline exposed this
shortcoming. Extra work to recalculate the alias results showed
up as a compile-time slowdown.
The file was modifiedllvm/test/Other/opt-O2-pipeline.ll
The file was modifiedllvm/test/Other/opt-Os-pipeline.ll
The file was modifiedllvm/lib/Transforms/Vectorize/VectorCombine.cpp
The file was modifiedllvm/test/CodeGen/AMDGPU/opt-pipeline.ll
The file was modifiedllvm/test/Other/opt-O3-pipeline.ll
Commit 7510aede627267819d9693381ad6c16dccfa0d17 by echristo
Handle eExpressionThreadVanished in error switch to handle
covered switch warning.
The file was modifiedlldb/source/Interpreter/CommandInterpreter.cpp
Commit 62fb3fa6d9c007385ce61e1203e6830fa4172bdd by Stanislav.Mekhanoshin
[AMDGPU] Define 6 dword subregs

This prevents autogeneration of degenerate names for these.

Differential Revision: https://reviews.llvm.org/D80451
The file was modifiedllvm/lib/Target/AMDGPU/SIRegisterInfo.td
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-insert-vector-elt.mir
Commit 0231227e5d8a7c4737ce2316dae01b63a2adfbe5 by stephen.neuendorffer
Reapply "[lit] GoogleTest framework should report failures if test binary crashes"

This reverts commit 78dea0e8fb6cc5c0fae64d65b7f40560cab7b329.

The offending lldb test (which is a real bug exposed by this patch)
has been disabled on windows (see a67b2faa7c4cfbceffb4213f46769c45a5a9291a)
and lldb is queued for inclusion into precommit testing, which would
have caught this.

Differential Revision: https://reviews.llvm.org/D80389
The file was addedllvm/utils/lit/tests/googletest-discovery-failed.py
The file was modifiedllvm/utils/lit/lit/formats/googletest.py
The file was addedllvm/utils/lit/tests/Inputs/googletest-discovery-failed/lit.cfg
The file was addedllvm/utils/lit/tests/Inputs/googletest-discovery-failed/subdir/OneTest.py