SuccessChanges

Summary

  1. [DebugInfo] Add types from constructor homing to the retained types list. (details)
  2. [docs] Recommend dropLocation() over setDebugLoc(DebugLoc()) (details)
  3. [NFC][MSAN] Remove an attribute in test (details)
  4. [NFC][Msan] Add llvm.fabs test (details)
  5. Fix test failures with trunk clang (details)
  6. [lldb] Hoist -s (trace directory) argument out of LLDB_TEST_COMMON_ARGS (NFC) (details)
  7. [gardening] Replace some uses of setDebugLoc(DebugLoc()) with dropLocation(), NFC (details)
  8. Add remquo, frexp and modf overload functions to HIP header (details)
  9. [RISCV] Use the extensions in the canonical order (NFC) (details)
  10. [AIX] asm output: use character literals in byte lists for strings (details)
  11. [X86] Increase the depth threshold required to form VPERMI2W/VPERMI2B in shuffle combining (details)
  12. [GlobalISel] Fix multiply with overflow intrinsics legalization generating invalid MIR. (details)
Commit 5c4fc581d5fe8427f03ec90b0d745453398aa3ad by akhuang
[DebugInfo] Add types from constructor homing to the retained types list.

Add class types to the retained types list to make sure they
don't get dropped if the constructor is optimized out later.

Differential Revision: https://reviews.llvm.org/D88522
The file was modifiedclang/test/CodeGenCXX/debug-info-limited-ctor.cpp
The file was modifiedclang/lib/CodeGen/CGDebugInfo.cpp
Commit f71849c74ed58e5d9ed3681cc6294128098012dc by Vedant Kumar
[docs] Recommend dropLocation() over setDebugLoc(DebugLoc())
The file was modifiedllvm/docs/HowToUpdateDebugInfo.rst
Commit 616c68aab75016d5d7ebc0b79bb3c38405b18ae6 by Vitaly Buka
[NFC][MSAN] Remove an attribute in test
The file was modifiedllvm/test/Instrumentation/MemorySanitizer/abs-vector.ll
Commit 795d94fdb9d2377452f86952dcf0921a6c68d2b5 by Vitaly Buka
[NFC][Msan] Add llvm.fabs test

llvm.fabs does not need a special handler as llvm.abs as its
single argument type match the return type.
The file was modifiedllvm/test/Instrumentation/MemorySanitizer/abs-vector.ll
Commit afcf9c47c5e74a0b567531547b677ff1d383ae50 by richard
Fix test failures with trunk clang

- Make the consteval constructor for the zero type be noexcept
- Don't expect three-way comparison of 0 against a comparison category
  to fail
The file was modifiedlibcxx/test/std/language.support/cmp/cmp.categories.pre/zero_type.verify.cpp
The file was modifiedlibcxx/include/compare
Commit bd14d6ea1517c93ceecaec29dad016d9a122fa1b by Jonas Devlieghere
[lldb] Hoist -s (trace directory) argument out of LLDB_TEST_COMMON_ARGS (NFC)

Give the trace directory argument its own variable
(LLDB_TEST_TRACE_DIRECTORY) so that we can configure it in
lit.site.cfg.py if we so desire.
The file was modifiedlldb/test/API/CMakeLists.txt
The file was modifiedlldb/test/API/lit.site.cfg.py.in
The file was modifiedlldb/test/API/lit.cfg.py
The file was modifiedlldb/utils/lldb-dotest/CMakeLists.txt
The file was modifiedlldb/utils/lldb-dotest/lldb-dotest.in
Commit 674f57870f4c8a7fd7b629bffc85b149cbefd3e0 by Vedant Kumar
[gardening] Replace some uses of setDebugLoc(DebugLoc()) with dropLocation(), NFC
The file was modifiedllvm/lib/Transforms/Scalar/LICM.cpp
The file was modifiedllvm/lib/Transforms/Utils/SimplifyCFG.cpp
Commit d04775e16bba456f0be0aaa7478959c5bfa22c41 by Yaxun.Liu
Add remquo, frexp and modf overload functions to HIP header
The file was modifiedclang/lib/Headers/__clang_hip_math.h
Commit c6b18cf9672bca4f61bb3ef401173742068e46ea by ebahapo
[RISCV] Use the extensions in the canonical order (NFC)

Use the ISA extensions for specific processors in the conventional canonical order.
The file was modifiedllvm/lib/Target/RISCV/RISCV.td
Commit 0a146a9d0bdd54411f0b0712e27481a4c280ae03 by hubert.reinterpretcast
[AIX] asm output: use character literals in byte lists for strings

This patch improves the assembly output produced for string literals by
using character literals in byte lists. This provides the benefits of
having printable characters appear as such in the assembly output and of
having strings kept as logical units on the same line.

Reviewed By: daltenty

Differential Revision: https://reviews.llvm.org/D80953
The file was addedllvm/test/CodeGen/PowerPC/aix-bytestring.ll
The file was modifiedllvm/lib/MC/MCAsmInfoXCOFF.cpp
The file was modifiedllvm/include/llvm/MC/MCAsmInfo.h
The file was modifiedllvm/test/CodeGen/PowerPC/aix-xcoff-rodata.ll
The file was modifiedllvm/lib/MC/MCAsmStreamer.cpp
The file was modifiedllvm/test/CodeGen/PowerPC/aix-xcoff-data.ll
The file was modifiedllvm/test/CodeGen/PowerPC/aix-xcoff-mergeable-str.ll
Commit 618a890b72f874cbc41168737d03f724f58805fc by craig.topper
[X86] Increase the depth threshold required to form VPERMI2W/VPERMI2B in shuffle combining

These instructions are implemented with two port 5 uops and one port 015 uop so they are more complicated that most shuffles.

This patch increases the depth threshold for when we form them during shuffle combining to try to limit increasing the number of uops especially on port 5.

Differential Revision: https://reviews.llvm.org/D88503
The file was modifiedllvm/test/CodeGen/X86/vector-zext.ll
The file was modifiedllvm/test/CodeGen/X86/vector-shuffle-128-v8.ll
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
The file was modifiedllvm/test/CodeGen/X86/min-legal-vector-width.ll
The file was modifiedllvm/test/CodeGen/X86/vector-shuffle-256-v32.ll
The file was modifiedllvm/test/CodeGen/X86/vector-shuffle-128-v16.ll
Commit 1d54e75cf26a4c60b66659d5d9c62f4bb9452b03 by Amara Emerson
[GlobalISel] Fix multiply with overflow intrinsics legalization generating invalid MIR.

During lowering of G_UMULO and friends, the previous code moved the builder's
insertion point to be after the legalizing instruction. When that happened, if
there happened to be a "G_CONSTANT i32 0" immediately after, the CSEMIRBuilder
would try to find that constant during the buildConstant(zero) call, and since
it dominates itself would return the iterator unchanged, even though the def
of the constant was *after* the current insertion point. This resulted in the
compare being generated *before* the constant which it was using.

There's no need to modify the insertion point before building the mul-hi or
constant. Delaying moving the insert point ensures those are built/CSEd before
the G_ICMP is built.

Fixes PR47679

Differential Revision: https://reviews.llvm.org/D88514
The file was modifiedllvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
The file was modifiedllvm/test/CodeGen/Mips/GlobalISel/legalizer/mul.mir
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/legalize-mul.mir
The file was modifiedllvm/test/CodeGen/Mips/GlobalISel/llvm-ir/mul.ll